-
Notifications
You must be signed in to change notification settings - Fork 131
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: added shared registries namespace property in model registry dsc component, fixes RHOAIENG-12335 #1221
feat: added shared registries namespace property in model registry dsc component, fixes RHOAIENG-12335 #1221
Conversation
@zdtsw, @VaishnaviHire, @lburgazzoli prow is timing out on pod scheduling, can you kick the failing jobs if you have the rights? |
Tested the changes in my cluster locally. Verified the following:
|
/retest |
/test opendatahub-operator-e2e |
i am fine with the change, just put a "on-hold" to get more eyes on |
It would be nice to have a test for the CRD validation so we won't accidentally remove it, otherwise LGTM |
for the e2e, if we can get #1216 in first, it will be less timeout in further runs |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, my only question is: where is it setting the default name for RHOAI?
that will be done in rhoai code and internal build system |
dfa48e2
to
4e33c9d
Compare
b414a06
to
e30bcf4
Compare
controllers/datasciencecluster/datasciencecluster_controller.go
Outdated
Show resolved
Hide resolved
- move ModelRegistryStatus from ModelReg into status - update validation rule for namespace: - when update is to removed/unmanaged modelreg: regardless previous state, can change name and set to removed - upgrade 2.13 to 2.14 when no NS set in 2.13 - when update is from remove/unmanaged: e.g change from removed to managed and change name at the same tie - keep same namespace, regardless state - reduce print on passed allowed webhook request - set to omitemptry so required is not add in the CSV - fix review comments: - move update status after reconcile is successful - set to use const for caching on ModeReg namespace Signed-off-by: Wen Zhou <[email protected]>
@zdtsw I guess we should squash the commits before merge right ? |
yes, it will be squahsed before the final one commits to not "pollute" git log 😓 |
It is actually merging policy preventing making proper patchsets. |
/lgtm Tested Upgrade from ODH 2.17 --> latest |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: etirelli, zdtsw The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
/test opendatahub-operator-e2e |
1 similar comment
/test opendatahub-operator-e2e |
dd3df21
into
opendatahub-io:incubation
odhWebhook := &webhook.Admission{ | ||
Handler: w, | ||
} | ||
hookServer.Register("/mutate-opendatahub-io-v1", odhWebhook) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why do you need additional endpoint? Doesn't one webhook work for both validation and mutation?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
According to the k8s documentation:
When allowing a request, a mutating admission webhook may optionally modify the incoming object as well.
So, we need a mutating webhook to modify a CR. They also use different sets of CRs and verbs.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i think the main reason to use 2 differnet endpoints , one per each, instead of having one endpoint for both (which is applicable as well) is we already had validation webhook in downstream. By this way, we can get the downstream part out first, and the mutating part as a separate one to test.
another reason is, it is slightly easy to maintain, the logic will be simple in its own Handle() and mutating only need on DSC not DSCI for now.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
According to the k8s documentation:
When allowing a request, a mutating admission webhook may optionally modify the incoming object as well.
So, we need a mutating webhook to modify a CR. They also use different sets of CRs and verbs.
Do I understand right that you claim that it is impossible?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How are you reading the documentation? Please point me to the documentation where it says a validating webhook can respond with a patch, maybe I missed it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Have you considered using admission.CustomDefaulter
instead of general-purpose webhook.Admission
? It seems like a good fit if we want to follow the single responsibility principle. It would also simplify the code.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How are you reading the documentation? Please point me to the documentation where it says a validating webhook can respond with a patch, maybe I missed it.
I'm just asking questions :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i think the main reason to use 2 differnet endpoints , one per each, instead of having one endpoint for both (which is applicable as well) is we already had validation webhook in downstream. By this way, we can get the downstream part out first, and the mutating part as a separate one to test. another reason is, it is slightly easy to maintain, the logic will be simple in its own Handle() and mutating only need on DSC not DSCI for now.
I did some experiments and agree, it makes logic more simple.
But I have another question. It has a check for dsc.Spec.Components.ModelRegistry.RegistriesNamespace but with // +kubebuilder:default="odh-model-registries" it never true for me.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I considered CustomDefaulter
, but it doesn't pass along the previous version of the object. It's nice to have it if the defaulting logic ever becomes complex enough to know what the old spec was.
We are already using complex validation logic in the MR CEL validator. So, I don't know whether defaulting webhook will ever need to also do that, but I also don't know that it never will. 😄
…o#776) Squashed commit due to buildability since ComponentInterface has changed. Other patches squashed as well to avoid double squashing due to merge policy. modelregistry: regenerate autogenerated files Run `make generate manifests` after all the changes Signed-off-by: Yauheni Kaliuta <[email protected]> feat: Add ModelRegistry component (opendatahub-io#775) (opendatahub-io#776) * feat: Add ModelRegistry component (opendatahub-io#775) * fix: Fix modelregistry odh overlays path * fix: fix dsc_create_test tests err nil check * fix: refactor ModelRegistry.ReconcileComponent for new parameters * chore: added modelregistry to README.md * fix: add missing rbac rules for deploymentconfigs and daemonsets * chore: code lint cleanup * fix: added check for nil DevFlags in model-registry component * fix: add nil check for dscispec.DevFlags in model-registry ReconcileComponent * fix: remove RBAC rules for daemonsets and deploymentconfigs * fix(chore): fix lint errors in dsc_deletion_test.go (cherry picked from commit 112d3f1) Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: removes SetImageParamsMap from ComponentInterface (opendatahub-io#897) Partial application of already applied commit d10a764 Author: Bartosz Majsak <[email protected]> Date: Thu Mar 7 15:43:37 2024 +0100 chore: removes SetImageParamsMap from ComponentInterface (opendatahub-io#897) As it's not used by any component, acting as a simple pass-return loop. This makes the API contract a bit cleaner. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: remove the need of passing rest config (opendatahub-io#895) Partial application of already applied commit ca7fa98 Author: Bartosz Majsak <[email protected]> Date: Fri Mar 8 17:40:54 2024 +0100 chore: remove the need of passing rest config (opendatahub-io#895) * chore: fixes ComponentInterface docs By removing reference to non-existing func. This function has been in use outside of this component. * fix: removes rest config As we are already using client.Client interface we do not have to instantiate other typed clients to e.g. list resources using their own funcs. Generic client.Client is sufficient for these needs. Additionally this change adds ctx propogation for these calls. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: feat(logger): for both controller level and component level (opendatahub-io#837) Partial application of already applied commit d8a83a2 Author: Wen Zhou <[email protected]> Date: Mon Apr 1 22:06:16 2024 +0200 feat(logger): for both controller level and component level (opendatahub-io#837) * feat(logger): for both controller level and component level Signed-off-by: Wen Zhou <[email protected]> * update(logger): use logr instead of uber's zap Signed-off-by: Wen Zhou <[email protected]> * update: do not log error only print Signed-off-by: Wen Zhou <[email protected]> * update: use zap.Options for both and tune levels Signed-off-by: Wen Zhou <[email protected]> * update: move setting into common function Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> update(modelregistry): rename image name (opendatahub-io#877) Signed-off-by: Wen Zhou <[email protected]> (cherry picked from commit b4e4d6f) modelregistry: partial: chore: cleanup duplicated functions packages and add more for godoc (opendatahub-io#981) Partial application of already applied commit 96c85f2 Author: Wen Zhou <[email protected]> Date: Tue Apr 23 14:05:24 2024 +0200 chore: cleanup duplicated functions packages and add more for godoc (opendatahub-io#981) * chore: cleanup duplicated functions/package and add godoc - move GetPlatform() from deploy package to cluster package - move const ManagedRhods SelfManagedRhods OpenDataHub from deploy to cluster package - move WaitForDeploymentAvailable() monitoring package to cluster package - remove monitoring package - move UpdatePodSecurityRolebinding() from common package to cluster package - deprecate GetDomain from common package, to only use GetDomain from cluster package. - remove gvk package, move its GVK to cluster package - move DeleteExistingSubscription() from deploy package to upgrade package - do not export getSubscription() Signed-off-by: Wen Zhou <[email protected]> * update: remove gvk into one file but under cluster package Signed-off-by: Wen Zhou <[email protected]> * update: rename variable, removing GVK from it Signed-off-by: Wen Zhou <[email protected]> * update: move gvk into a sub package under cluster Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> feat(mr): create namespace for Model Registry (opendatahub-io#930) * feat(mr): create namespace for smm Signed-off-by: Wen Zhou <[email protected]> * fix: rebase Signed-off-by: Zhou, Wen <[email protected]> * update: code review comments Signed-off-by: Wen Zhou <[email protected]> * fix(doc): wrong comments Signed-off-by: Wen Zhou <[email protected]> * update: remove label to keep namespace even opreator is uninstalled Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> (cherry picked from commit 1188ce1) feat(mr): add model registry odh extras manifests, fixes RHOAIENG-5112 (opendatahub-io#953) (cherry picked from commit 7c3e81b) modelregistry: partial: chore: Open up util functions for context propagation (opendatahub-io#1033) Partial application of already applied commit 105adae Author: Aslak Knutsen <[email protected]> Date: Tue Jun 4 15:16:21 2024 +0200 chore: Open up util functions for context propagation (opendatahub-io#1033) context should be determined by the caller and propagated down the call chain. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: remove duplicated platform call in each component (opendatahub-io#1055) Partial application of already applied commit 1b04761 Author: Wen Zhou <[email protected]> Date: Fri Jun 14 14:47:33 2024 +0200 chore: remove duplicated platform call in each component (opendatahub-io#1055) - get in DSC and pass into compoment Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: update api docs run `make api-docs` add +groupName=datasciencecluster.opendatahub.io On backporting of 1b86e42 ("Update readme.md (opendatahub-io#890)") Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore(lint): enable contextcheck and containedctx (opendatahub-io#1070) Partial application of already applied: commit 06e21a4 Author: Luca Burgazzoli <[email protected]> Date: Tue Jun 25 17:15:13 2024 +0200 chore(lint): enable contextcheck and containedctx (opendatahub-io#1070) * chore(lint): enable contextcheck Signed-off-by: Luca Burgazzoli <[email protected]> * chore(lint): enable containedctx Signed-off-by: Luca Burgazzoli <[email protected]> * Fix PR review findings * Fix rebase --------- Signed-off-by: Luca Burgazzoli <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> refactor: dashboard with new manifests structure (opendatahub-io#1065) Partial application of already applied: commit 438f4c2 Author: Wen Zhou <[email protected]> Date: Tue Jul 2 16:56:25 2024 +0200 refactor: dashboard with new manifests structure (opendatahub-io#1065) * refactor: dashboard with new manifests structure - change type of platform, skip convert to string - add more support for ApplyParam() to not only take ENV but also anything from ExtraParamMaps * update: simplify override function * update: add value for Unknown platform --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> feat: add managed model registry prometheus config handling logic, part of RHOAIENG-4273 (opendatahub-io#1150) (cherry picked from commit 72fc80f) Adjusted Kueue and TrainingOperator rules Signed-off-by: Yauheni Kaliuta <[email protected]> feat: add default cert for model registry, fixes RHOAIENG-9909 (opendatahub-io#1165) Conflicts: ApplyParams arguments due to missing: d84cd33 ("update: remove unnecessary param from ApplyParams() (opendatahub-io#1180)") * feat: add default cert for model registry, fixes RHOAIENG-9909 * fix: fixed lint errors * fix: add servicemesh feature check for MR, add MR enable check in e2e default cert test * fix: changed MR servicemesh status check to look for Managed state * fix: ignore missing model-registry default cert if already removed (cherry picked from commit 4c411a6) feat: add servicemeshmember for model registry namespace, fixes RHOAIENG-11831 (opendatahub-io#1202) * feat: add servicemeshmember for model registry namespace, fixes RHOAIENG-11831 * fix: ignore error if MR smm already exists * code cleanup for readability Co-authored-by: Bartosz Majsak <[email protected]> * Avoid shadowing package name in variable Co-authored-by: Bartosz Majsak <[email protected]> * chore: rename createServicemeshMember to enrollToServiceMesh, add log messages --------- Co-authored-by: Bartosz Majsak <[email protected]> (cherry picked from commit 8f3d013) feat: add managed model registry prometheus job, metrics, and alering rules, fixes RHOAIENG-4273 (cherry picked from commit f811d67) modelregistry: partial: fix: add check for all platform offering on components Partial application of ab7e04e ("fix: add check for all platform offering on components (opendatahub-io#1205)") ModelRegistry related. Signed-off-by: Yauheni Kaliuta <[email protected]> feat: added shared registries namespace property in model registry dsc component, fixes RHOAIENG-12335 (opendatahub-io#1221) * feat: added shared registries namespace property in model registry dsc component, fixes RHOAIENG-12335 Signed-off-by: Dhiraj Bokde <[email protected]> * fix: added registriesNamespace property in references to model registry component in docs, samples, etc. Signed-off-by: Dhiraj Bokde <[email protected]> * fix: updated api-overview.md Signed-off-by: Dhiraj Bokde <[email protected]> * fix: add missing field in setupDSCInstance() Signed-off-by: Dhiraj Bokde <[email protected]> * fix: added debug log for failing e2e test * debug: added log messages in test dsc creation Signed-off-by: Dhiraj Bokde <[email protected]> * debug: make registriesNamespace omitempty so apiserver will set the default value, clean testDSCCreation with more log messages Signed-off-by: Dhiraj Bokde <[email protected]> * update: modelregistry with namespace - add namespace for rhoai case - remove omitemptry on namespace: if user does not set it, it will get default value to use. since its type is string Signed-off-by: Wen Zhou <[email protected]> * fix: test need to update for modelreg namespace Signed-off-by: Wen Zhou <[email protected]> * update: cleanup debug info in test cases Signed-off-by: Wen Zhou <[email protected]> * fix: make registriesNamespace immutability check dynamic in cel validation rule * fix: refactor validation rule, set registriesNamespace to optional, add patch func in modelregistry to set default value * fix: add defaulting webhook including envtest, remove patch from modelregistry component * fix: add namespace name pattern for registriesNamespace, allow empty string to replace with default value * fix: use unique webhook names * fix: don't change existing validating webhook name to avoid upgrade issues * feat: add model registry registriesNamespace in DSC status * update: - move ModelRegistryStatus from ModelReg into status - update validation rule for namespace: - when update is to removed/unmanaged modelreg: regardless previous state, can change name and set to removed - upgrade 2.13 to 2.14 when no NS set in 2.13 - when update is from remove/unmanaged: e.g change from removed to managed and change name at the same tie - keep same namespace, regardless state - reduce print on passed allowed webhook request - set to omitemptry so required is not add in the CSV - fix review comments: - move update status after reconcile is successful - set to use const for caching on ModeReg namespace Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Dhiraj Bokde <[email protected]> Signed-off-by: Wen Zhou <[email protected]> Co-authored-by: Wen Zhou <[email protected]> (cherry picked from commit dd3df21) fix: only replace/set default model reg namespace by webhook if component is enabled - when modelreg is not set in DSC - when modelreg is set to be Removed these two cases should not block operation, for backwards compataible Signed-off-by: Wen Zhou <[email protected]> (cherry picked from commit 03f6c0b)
…o#776) Squashed commit due to buildability since ComponentInterface has changed. Other patches squashed as well to avoid double squashing due to merge policy. modelregistry: regenerate autogenerated files Run `make generate manifests` after all the changes Signed-off-by: Yauheni Kaliuta <[email protected]> feat: Add ModelRegistry component (opendatahub-io#775) (opendatahub-io#776) * feat: Add ModelRegistry component (opendatahub-io#775) * fix: Fix modelregistry odh overlays path * fix: fix dsc_create_test tests err nil check * fix: refactor ModelRegistry.ReconcileComponent for new parameters * chore: added modelregistry to README.md * fix: add missing rbac rules for deploymentconfigs and daemonsets * chore: code lint cleanup * fix: added check for nil DevFlags in model-registry component * fix: add nil check for dscispec.DevFlags in model-registry ReconcileComponent * fix: remove RBAC rules for daemonsets and deploymentconfigs * fix(chore): fix lint errors in dsc_deletion_test.go (cherry picked from commit 112d3f1) Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: removes SetImageParamsMap from ComponentInterface (opendatahub-io#897) Partial application of already applied commit d10a764 Author: Bartosz Majsak <[email protected]> Date: Thu Mar 7 15:43:37 2024 +0100 chore: removes SetImageParamsMap from ComponentInterface (opendatahub-io#897) As it's not used by any component, acting as a simple pass-return loop. This makes the API contract a bit cleaner. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: remove the need of passing rest config (opendatahub-io#895) Partial application of already applied commit ca7fa98 Author: Bartosz Majsak <[email protected]> Date: Fri Mar 8 17:40:54 2024 +0100 chore: remove the need of passing rest config (opendatahub-io#895) * chore: fixes ComponentInterface docs By removing reference to non-existing func. This function has been in use outside of this component. * fix: removes rest config As we are already using client.Client interface we do not have to instantiate other typed clients to e.g. list resources using their own funcs. Generic client.Client is sufficient for these needs. Additionally this change adds ctx propogation for these calls. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: feat(logger): for both controller level and component level (opendatahub-io#837) Partial application of already applied commit d8a83a2 Author: Wen Zhou <[email protected]> Date: Mon Apr 1 22:06:16 2024 +0200 feat(logger): for both controller level and component level (opendatahub-io#837) * feat(logger): for both controller level and component level Signed-off-by: Wen Zhou <[email protected]> * update(logger): use logr instead of uber's zap Signed-off-by: Wen Zhou <[email protected]> * update: do not log error only print Signed-off-by: Wen Zhou <[email protected]> * update: use zap.Options for both and tune levels Signed-off-by: Wen Zhou <[email protected]> * update: move setting into common function Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> update(modelregistry): rename image name (opendatahub-io#877) Signed-off-by: Wen Zhou <[email protected]> (cherry picked from commit b4e4d6f) modelregistry: partial: chore: cleanup duplicated functions packages and add more for godoc (opendatahub-io#981) Partial application of already applied commit 96c85f2 Author: Wen Zhou <[email protected]> Date: Tue Apr 23 14:05:24 2024 +0200 chore: cleanup duplicated functions packages and add more for godoc (opendatahub-io#981) * chore: cleanup duplicated functions/package and add godoc - move GetPlatform() from deploy package to cluster package - move const ManagedRhods SelfManagedRhods OpenDataHub from deploy to cluster package - move WaitForDeploymentAvailable() monitoring package to cluster package - remove monitoring package - move UpdatePodSecurityRolebinding() from common package to cluster package - deprecate GetDomain from common package, to only use GetDomain from cluster package. - remove gvk package, move its GVK to cluster package - move DeleteExistingSubscription() from deploy package to upgrade package - do not export getSubscription() Signed-off-by: Wen Zhou <[email protected]> * update: remove gvk into one file but under cluster package Signed-off-by: Wen Zhou <[email protected]> * update: rename variable, removing GVK from it Signed-off-by: Wen Zhou <[email protected]> * update: move gvk into a sub package under cluster Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> feat(mr): create namespace for Model Registry (opendatahub-io#930) * feat(mr): create namespace for smm Signed-off-by: Wen Zhou <[email protected]> * fix: rebase Signed-off-by: Zhou, Wen <[email protected]> * update: code review comments Signed-off-by: Wen Zhou <[email protected]> * fix(doc): wrong comments Signed-off-by: Wen Zhou <[email protected]> * update: remove label to keep namespace even opreator is uninstalled Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> (cherry picked from commit 1188ce1) feat(mr): add model registry odh extras manifests, fixes RHOAIENG-5112 (opendatahub-io#953) (cherry picked from commit 7c3e81b) modelregistry: partial: chore: Open up util functions for context propagation (opendatahub-io#1033) Partial application of already applied commit 105adae Author: Aslak Knutsen <[email protected]> Date: Tue Jun 4 15:16:21 2024 +0200 chore: Open up util functions for context propagation (opendatahub-io#1033) context should be determined by the caller and propagated down the call chain. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: remove duplicated platform call in each component (opendatahub-io#1055) Partial application of already applied commit 1b04761 Author: Wen Zhou <[email protected]> Date: Fri Jun 14 14:47:33 2024 +0200 chore: remove duplicated platform call in each component (opendatahub-io#1055) - get in DSC and pass into compoment Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: update api docs run `make api-docs` add +groupName=datasciencecluster.opendatahub.io On backporting of 1b86e42 ("Update readme.md (opendatahub-io#890)") Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore(lint): enable contextcheck and containedctx (opendatahub-io#1070) Partial application of already applied: commit 06e21a4 Author: Luca Burgazzoli <[email protected]> Date: Tue Jun 25 17:15:13 2024 +0200 chore(lint): enable contextcheck and containedctx (opendatahub-io#1070) * chore(lint): enable contextcheck Signed-off-by: Luca Burgazzoli <[email protected]> * chore(lint): enable containedctx Signed-off-by: Luca Burgazzoli <[email protected]> * Fix PR review findings * Fix rebase --------- Signed-off-by: Luca Burgazzoli <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> refactor: dashboard with new manifests structure (opendatahub-io#1065) Partial application of already applied: commit 438f4c2 Author: Wen Zhou <[email protected]> Date: Tue Jul 2 16:56:25 2024 +0200 refactor: dashboard with new manifests structure (opendatahub-io#1065) * refactor: dashboard with new manifests structure - change type of platform, skip convert to string - add more support for ApplyParam() to not only take ENV but also anything from ExtraParamMaps * update: simplify override function * update: add value for Unknown platform --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> feat: add managed model registry prometheus config handling logic, part of RHOAIENG-4273 (opendatahub-io#1150) (cherry picked from commit 72fc80f) Adjusted Kueue and TrainingOperator rules Signed-off-by: Yauheni Kaliuta <[email protected]> feat: add default cert for model registry, fixes RHOAIENG-9909 (opendatahub-io#1165) Conflicts: ApplyParams arguments due to missing: d84cd33 ("update: remove unnecessary param from ApplyParams() (opendatahub-io#1180)") * feat: add default cert for model registry, fixes RHOAIENG-9909 * fix: fixed lint errors * fix: add servicemesh feature check for MR, add MR enable check in e2e default cert test * fix: changed MR servicemesh status check to look for Managed state * fix: ignore missing model-registry default cert if already removed (cherry picked from commit 4c411a6) feat: add servicemeshmember for model registry namespace, fixes RHOAIENG-11831 (opendatahub-io#1202) * feat: add servicemeshmember for model registry namespace, fixes RHOAIENG-11831 * fix: ignore error if MR smm already exists * code cleanup for readability Co-authored-by: Bartosz Majsak <[email protected]> * Avoid shadowing package name in variable Co-authored-by: Bartosz Majsak <[email protected]> * chore: rename createServicemeshMember to enrollToServiceMesh, add log messages --------- Co-authored-by: Bartosz Majsak <[email protected]> (cherry picked from commit 8f3d013) feat: add managed model registry prometheus job, metrics, and alering rules, fixes RHOAIENG-4273 (cherry picked from commit f811d67) modelregistry: partial: fix: add check for all platform offering on components Partial application of ab7e04e ("fix: add check for all platform offering on components (opendatahub-io#1205)") ModelRegistry related. Signed-off-by: Yauheni Kaliuta <[email protected]> feat: added shared registries namespace property in model registry dsc component, fixes RHOAIENG-12335 (opendatahub-io#1221) * feat: added shared registries namespace property in model registry dsc component, fixes RHOAIENG-12335 Signed-off-by: Dhiraj Bokde <[email protected]> * fix: added registriesNamespace property in references to model registry component in docs, samples, etc. Signed-off-by: Dhiraj Bokde <[email protected]> * fix: updated api-overview.md Signed-off-by: Dhiraj Bokde <[email protected]> * fix: add missing field in setupDSCInstance() Signed-off-by: Dhiraj Bokde <[email protected]> * fix: added debug log for failing e2e test * debug: added log messages in test dsc creation Signed-off-by: Dhiraj Bokde <[email protected]> * debug: make registriesNamespace omitempty so apiserver will set the default value, clean testDSCCreation with more log messages Signed-off-by: Dhiraj Bokde <[email protected]> * update: modelregistry with namespace - add namespace for rhoai case - remove omitemptry on namespace: if user does not set it, it will get default value to use. since its type is string Signed-off-by: Wen Zhou <[email protected]> * fix: test need to update for modelreg namespace Signed-off-by: Wen Zhou <[email protected]> * update: cleanup debug info in test cases Signed-off-by: Wen Zhou <[email protected]> * fix: make registriesNamespace immutability check dynamic in cel validation rule * fix: refactor validation rule, set registriesNamespace to optional, add patch func in modelregistry to set default value * fix: add defaulting webhook including envtest, remove patch from modelregistry component * fix: add namespace name pattern for registriesNamespace, allow empty string to replace with default value * fix: use unique webhook names * fix: don't change existing validating webhook name to avoid upgrade issues * feat: add model registry registriesNamespace in DSC status * update: - move ModelRegistryStatus from ModelReg into status - update validation rule for namespace: - when update is to removed/unmanaged modelreg: regardless previous state, can change name and set to removed - upgrade 2.13 to 2.14 when no NS set in 2.13 - when update is from remove/unmanaged: e.g change from removed to managed and change name at the same tie - keep same namespace, regardless state - reduce print on passed allowed webhook request - set to omitemptry so required is not add in the CSV - fix review comments: - move update status after reconcile is successful - set to use const for caching on ModeReg namespace Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Dhiraj Bokde <[email protected]> Signed-off-by: Wen Zhou <[email protected]> Co-authored-by: Wen Zhou <[email protected]> (cherry picked from commit dd3df21) fix: only replace/set default model reg namespace by webhook if component is enabled - when modelreg is not set in DSC - when modelreg is set to be Removed these two cases should not block operation, for backwards compataible Signed-off-by: Wen Zhou <[email protected]> (cherry picked from commit 03f6c0b) Update autogenerated files run `make generate manifests api-docs` Signed-off-by: Yauheni Kaliuta <[email protected]>
…o#776) Squashed commit due to buildability since ComponentInterface has changed. Other patches squashed as well to avoid possible double squashing on merging. modelregistry: regenerate autogenerated files Run `make generate manifests` after all the changes Signed-off-by: Yauheni Kaliuta <[email protected]> feat: Add ModelRegistry component (opendatahub-io#775) (opendatahub-io#776) * feat: Add ModelRegistry component (opendatahub-io#775) * fix: Fix modelregistry odh overlays path * fix: fix dsc_create_test tests err nil check * fix: refactor ModelRegistry.ReconcileComponent for new parameters * chore: added modelregistry to README.md * fix: add missing rbac rules for deploymentconfigs and daemonsets * chore: code lint cleanup * fix: added check for nil DevFlags in model-registry component * fix: add nil check for dscispec.DevFlags in model-registry ReconcileComponent * fix: remove RBAC rules for daemonsets and deploymentconfigs * fix(chore): fix lint errors in dsc_deletion_test.go (cherry picked from commit 112d3f1) Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: removes SetImageParamsMap from ComponentInterface (opendatahub-io#897) Partial application of already applied commit d10a764 Author: Bartosz Majsak <[email protected]> Date: Thu Mar 7 15:43:37 2024 +0100 chore: removes SetImageParamsMap from ComponentInterface (opendatahub-io#897) As it's not used by any component, acting as a simple pass-return loop. This makes the API contract a bit cleaner. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: remove the need of passing rest config (opendatahub-io#895) Partial application of already applied commit ca7fa98 Author: Bartosz Majsak <[email protected]> Date: Fri Mar 8 17:40:54 2024 +0100 chore: remove the need of passing rest config (opendatahub-io#895) * chore: fixes ComponentInterface docs By removing reference to non-existing func. This function has been in use outside of this component. * fix: removes rest config As we are already using client.Client interface we do not have to instantiate other typed clients to e.g. list resources using their own funcs. Generic client.Client is sufficient for these needs. Additionally this change adds ctx propogation for these calls. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: feat(logger): for both controller level and component level (opendatahub-io#837) Partial application of already applied commit d8a83a2 Author: Wen Zhou <[email protected]> Date: Mon Apr 1 22:06:16 2024 +0200 feat(logger): for both controller level and component level (opendatahub-io#837) * feat(logger): for both controller level and component level Signed-off-by: Wen Zhou <[email protected]> * update(logger): use logr instead of uber's zap Signed-off-by: Wen Zhou <[email protected]> * update: do not log error only print Signed-off-by: Wen Zhou <[email protected]> * update: use zap.Options for both and tune levels Signed-off-by: Wen Zhou <[email protected]> * update: move setting into common function Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> update(modelregistry): rename image name (opendatahub-io#877) Signed-off-by: Wen Zhou <[email protected]> (cherry picked from commit b4e4d6f) modelregistry: partial: chore: cleanup duplicated functions packages and add more for godoc (opendatahub-io#981) Partial application of already applied commit 96c85f2 Author: Wen Zhou <[email protected]> Date: Tue Apr 23 14:05:24 2024 +0200 chore: cleanup duplicated functions packages and add more for godoc (opendatahub-io#981) * chore: cleanup duplicated functions/package and add godoc - move GetPlatform() from deploy package to cluster package - move const ManagedRhods SelfManagedRhods OpenDataHub from deploy to cluster package - move WaitForDeploymentAvailable() monitoring package to cluster package - remove monitoring package - move UpdatePodSecurityRolebinding() from common package to cluster package - deprecate GetDomain from common package, to only use GetDomain from cluster package. - remove gvk package, move its GVK to cluster package - move DeleteExistingSubscription() from deploy package to upgrade package - do not export getSubscription() Signed-off-by: Wen Zhou <[email protected]> * update: remove gvk into one file but under cluster package Signed-off-by: Wen Zhou <[email protected]> * update: rename variable, removing GVK from it Signed-off-by: Wen Zhou <[email protected]> * update: move gvk into a sub package under cluster Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> feat(mr): create namespace for Model Registry (opendatahub-io#930) * feat(mr): create namespace for smm Signed-off-by: Wen Zhou <[email protected]> * fix: rebase Signed-off-by: Zhou, Wen <[email protected]> * update: code review comments Signed-off-by: Wen Zhou <[email protected]> * fix(doc): wrong comments Signed-off-by: Wen Zhou <[email protected]> * update: remove label to keep namespace even opreator is uninstalled Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> (cherry picked from commit 1188ce1) feat(mr): add model registry odh extras manifests, fixes RHOAIENG-5112 (opendatahub-io#953) (cherry picked from commit 7c3e81b) modelregistry: partial: chore: Open up util functions for context propagation (opendatahub-io#1033) Partial application of already applied commit 105adae Author: Aslak Knutsen <[email protected]> Date: Tue Jun 4 15:16:21 2024 +0200 chore: Open up util functions for context propagation (opendatahub-io#1033) context should be determined by the caller and propagated down the call chain. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: remove duplicated platform call in each component (opendatahub-io#1055) Partial application of already applied commit 1b04761 Author: Wen Zhou <[email protected]> Date: Fri Jun 14 14:47:33 2024 +0200 chore: remove duplicated platform call in each component (opendatahub-io#1055) - get in DSC and pass into compoment Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: update api docs run `make api-docs` add +groupName=datasciencecluster.opendatahub.io On backporting of 1b86e42 ("Update readme.md (opendatahub-io#890)") Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore(lint): enable contextcheck and containedctx (opendatahub-io#1070) Partial application of already applied: commit 06e21a4 Author: Luca Burgazzoli <[email protected]> Date: Tue Jun 25 17:15:13 2024 +0200 chore(lint): enable contextcheck and containedctx (opendatahub-io#1070) * chore(lint): enable contextcheck Signed-off-by: Luca Burgazzoli <[email protected]> * chore(lint): enable containedctx Signed-off-by: Luca Burgazzoli <[email protected]> * Fix PR review findings * Fix rebase --------- Signed-off-by: Luca Burgazzoli <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> refactor: dashboard with new manifests structure (opendatahub-io#1065) Partial application of already applied: commit 438f4c2 Author: Wen Zhou <[email protected]> Date: Tue Jul 2 16:56:25 2024 +0200 refactor: dashboard with new manifests structure (opendatahub-io#1065) * refactor: dashboard with new manifests structure - change type of platform, skip convert to string - add more support for ApplyParam() to not only take ENV but also anything from ExtraParamMaps * update: simplify override function * update: add value for Unknown platform --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> feat: add managed model registry prometheus config handling logic, part of RHOAIENG-4273 (opendatahub-io#1150) (cherry picked from commit 72fc80f) Adjusted Kueue and TrainingOperator rules Signed-off-by: Yauheni Kaliuta <[email protected]> feat: add default cert for model registry, fixes RHOAIENG-9909 (opendatahub-io#1165) Conflicts: ApplyParams arguments due to missing: d84cd33 ("update: remove unnecessary param from ApplyParams() (opendatahub-io#1180)") * feat: add default cert for model registry, fixes RHOAIENG-9909 * fix: fixed lint errors * fix: add servicemesh feature check for MR, add MR enable check in e2e default cert test * fix: changed MR servicemesh status check to look for Managed state * fix: ignore missing model-registry default cert if already removed (cherry picked from commit 4c411a6) feat: add servicemeshmember for model registry namespace, fixes RHOAIENG-11831 (opendatahub-io#1202) * feat: add servicemeshmember for model registry namespace, fixes RHOAIENG-11831 * fix: ignore error if MR smm already exists * code cleanup for readability Co-authored-by: Bartosz Majsak <[email protected]> * Avoid shadowing package name in variable Co-authored-by: Bartosz Majsak <[email protected]> * chore: rename createServicemeshMember to enrollToServiceMesh, add log messages --------- Co-authored-by: Bartosz Majsak <[email protected]> (cherry picked from commit 8f3d013) feat: add managed model registry prometheus job, metrics, and alering rules, fixes RHOAIENG-4273 (cherry picked from commit f811d67) modelregistry: partial: fix: add check for all platform offering on components Partial application of ab7e04e ("fix: add check for all platform offering on components (opendatahub-io#1205)") ModelRegistry related. Signed-off-by: Yauheni Kaliuta <[email protected]> feat: added shared registries namespace property in model registry dsc component, fixes RHOAIENG-12335 (opendatahub-io#1221) * feat: added shared registries namespace property in model registry dsc component, fixes RHOAIENG-12335 Signed-off-by: Dhiraj Bokde <[email protected]> * fix: added registriesNamespace property in references to model registry component in docs, samples, etc. Signed-off-by: Dhiraj Bokde <[email protected]> * fix: updated api-overview.md Signed-off-by: Dhiraj Bokde <[email protected]> * fix: add missing field in setupDSCInstance() Signed-off-by: Dhiraj Bokde <[email protected]> * fix: added debug log for failing e2e test * debug: added log messages in test dsc creation Signed-off-by: Dhiraj Bokde <[email protected]> * debug: make registriesNamespace omitempty so apiserver will set the default value, clean testDSCCreation with more log messages Signed-off-by: Dhiraj Bokde <[email protected]> * update: modelregistry with namespace - add namespace for rhoai case - remove omitemptry on namespace: if user does not set it, it will get default value to use. since its type is string Signed-off-by: Wen Zhou <[email protected]> * fix: test need to update for modelreg namespace Signed-off-by: Wen Zhou <[email protected]> * update: cleanup debug info in test cases Signed-off-by: Wen Zhou <[email protected]> * fix: make registriesNamespace immutability check dynamic in cel validation rule * fix: refactor validation rule, set registriesNamespace to optional, add patch func in modelregistry to set default value * fix: add defaulting webhook including envtest, remove patch from modelregistry component * fix: add namespace name pattern for registriesNamespace, allow empty string to replace with default value * fix: use unique webhook names * fix: don't change existing validating webhook name to avoid upgrade issues * feat: add model registry registriesNamespace in DSC status * update: - move ModelRegistryStatus from ModelReg into status - update validation rule for namespace: - when update is to removed/unmanaged modelreg: regardless previous state, can change name and set to removed - upgrade 2.13 to 2.14 when no NS set in 2.13 - when update is from remove/unmanaged: e.g change from removed to managed and change name at the same tie - keep same namespace, regardless state - reduce print on passed allowed webhook request - set to omitemptry so required is not add in the CSV - fix review comments: - move update status after reconcile is successful - set to use const for caching on ModeReg namespace Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Dhiraj Bokde <[email protected]> Signed-off-by: Wen Zhou <[email protected]> Co-authored-by: Wen Zhou <[email protected]> (cherry picked from commit dd3df21) fix: only replace/set default model reg namespace by webhook if component is enabled - when modelreg is not set in DSC - when modelreg is set to be Removed these two cases should not block operation, for backwards compataible Signed-off-by: Wen Zhou <[email protected]> (cherry picked from commit 03f6c0b) Update autogenerated files run `make generate manifests api-docs` Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: replace odh-model-registries with rhoai-model-registries Fix names of default registries namespace treewide. Signed-off-by: Yauheni Kaliuta <[email protected]> tests: e2e: disable modelregistry It is not GA yet, disable for now to avoid possible problems. Signed-off-by: Yauheni Kaliuta <[email protected]> get_all_manifests.sh: modelregistry: use rhoai-2.14 branch Use versioned branch/tag like other components. Signed-off-by: Yauheni Kaliuta <[email protected]>
…o#776) Squashed commit due to buildability since ComponentInterface has changed. Other patches squashed as well to avoid possible double squashing on merging. modelregistry: regenerate autogenerated files Run `make generate manifests` after all the changes Signed-off-by: Yauheni Kaliuta <[email protected]> feat: Add ModelRegistry component (opendatahub-io#775) (opendatahub-io#776) * feat: Add ModelRegistry component (opendatahub-io#775) * fix: Fix modelregistry odh overlays path * fix: fix dsc_create_test tests err nil check * fix: refactor ModelRegistry.ReconcileComponent for new parameters * chore: added modelregistry to README.md * fix: add missing rbac rules for deploymentconfigs and daemonsets * chore: code lint cleanup * fix: added check for nil DevFlags in model-registry component * fix: add nil check for dscispec.DevFlags in model-registry ReconcileComponent * fix: remove RBAC rules for daemonsets and deploymentconfigs * fix(chore): fix lint errors in dsc_deletion_test.go (cherry picked from commit 112d3f1) Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: removes SetImageParamsMap from ComponentInterface (opendatahub-io#897) Partial application of already applied commit d10a764 Author: Bartosz Majsak <[email protected]> Date: Thu Mar 7 15:43:37 2024 +0100 chore: removes SetImageParamsMap from ComponentInterface (opendatahub-io#897) As it's not used by any component, acting as a simple pass-return loop. This makes the API contract a bit cleaner. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: remove the need of passing rest config (opendatahub-io#895) Partial application of already applied commit ca7fa98 Author: Bartosz Majsak <[email protected]> Date: Fri Mar 8 17:40:54 2024 +0100 chore: remove the need of passing rest config (opendatahub-io#895) * chore: fixes ComponentInterface docs By removing reference to non-existing func. This function has been in use outside of this component. * fix: removes rest config As we are already using client.Client interface we do not have to instantiate other typed clients to e.g. list resources using their own funcs. Generic client.Client is sufficient for these needs. Additionally this change adds ctx propogation for these calls. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: feat(logger): for both controller level and component level (opendatahub-io#837) Partial application of already applied commit d8a83a2 Author: Wen Zhou <[email protected]> Date: Mon Apr 1 22:06:16 2024 +0200 feat(logger): for both controller level and component level (opendatahub-io#837) * feat(logger): for both controller level and component level Signed-off-by: Wen Zhou <[email protected]> * update(logger): use logr instead of uber's zap Signed-off-by: Wen Zhou <[email protected]> * update: do not log error only print Signed-off-by: Wen Zhou <[email protected]> * update: use zap.Options for both and tune levels Signed-off-by: Wen Zhou <[email protected]> * update: move setting into common function Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> update(modelregistry): rename image name (opendatahub-io#877) Signed-off-by: Wen Zhou <[email protected]> (cherry picked from commit b4e4d6f) modelregistry: partial: chore: cleanup duplicated functions packages and add more for godoc (opendatahub-io#981) Partial application of already applied commit 96c85f2 Author: Wen Zhou <[email protected]> Date: Tue Apr 23 14:05:24 2024 +0200 chore: cleanup duplicated functions packages and add more for godoc (opendatahub-io#981) * chore: cleanup duplicated functions/package and add godoc - move GetPlatform() from deploy package to cluster package - move const ManagedRhods SelfManagedRhods OpenDataHub from deploy to cluster package - move WaitForDeploymentAvailable() monitoring package to cluster package - remove monitoring package - move UpdatePodSecurityRolebinding() from common package to cluster package - deprecate GetDomain from common package, to only use GetDomain from cluster package. - remove gvk package, move its GVK to cluster package - move DeleteExistingSubscription() from deploy package to upgrade package - do not export getSubscription() Signed-off-by: Wen Zhou <[email protected]> * update: remove gvk into one file but under cluster package Signed-off-by: Wen Zhou <[email protected]> * update: rename variable, removing GVK from it Signed-off-by: Wen Zhou <[email protected]> * update: move gvk into a sub package under cluster Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> feat(mr): create namespace for Model Registry (opendatahub-io#930) * feat(mr): create namespace for smm Signed-off-by: Wen Zhou <[email protected]> * fix: rebase Signed-off-by: Zhou, Wen <[email protected]> * update: code review comments Signed-off-by: Wen Zhou <[email protected]> * fix(doc): wrong comments Signed-off-by: Wen Zhou <[email protected]> * update: remove label to keep namespace even opreator is uninstalled Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> (cherry picked from commit 1188ce1) feat(mr): add model registry odh extras manifests, fixes RHOAIENG-5112 (opendatahub-io#953) (cherry picked from commit 7c3e81b) modelregistry: partial: chore: Open up util functions for context propagation (opendatahub-io#1033) Partial application of already applied commit 105adae Author: Aslak Knutsen <[email protected]> Date: Tue Jun 4 15:16:21 2024 +0200 chore: Open up util functions for context propagation (opendatahub-io#1033) context should be determined by the caller and propagated down the call chain. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: remove duplicated platform call in each component (opendatahub-io#1055) Partial application of already applied commit 1b04761 Author: Wen Zhou <[email protected]> Date: Fri Jun 14 14:47:33 2024 +0200 chore: remove duplicated platform call in each component (opendatahub-io#1055) - get in DSC and pass into compoment Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: update api docs run `make api-docs` add +groupName=datasciencecluster.opendatahub.io On backporting of 1b86e42 ("Update readme.md (opendatahub-io#890)") Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore(lint): enable contextcheck and containedctx (opendatahub-io#1070) Partial application of already applied: commit 06e21a4 Author: Luca Burgazzoli <[email protected]> Date: Tue Jun 25 17:15:13 2024 +0200 chore(lint): enable contextcheck and containedctx (opendatahub-io#1070) * chore(lint): enable contextcheck Signed-off-by: Luca Burgazzoli <[email protected]> * chore(lint): enable containedctx Signed-off-by: Luca Burgazzoli <[email protected]> * Fix PR review findings * Fix rebase --------- Signed-off-by: Luca Burgazzoli <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> refactor: dashboard with new manifests structure (opendatahub-io#1065) Partial application of already applied: commit 438f4c2 Author: Wen Zhou <[email protected]> Date: Tue Jul 2 16:56:25 2024 +0200 refactor: dashboard with new manifests structure (opendatahub-io#1065) * refactor: dashboard with new manifests structure - change type of platform, skip convert to string - add more support for ApplyParam() to not only take ENV but also anything from ExtraParamMaps * update: simplify override function * update: add value for Unknown platform --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> feat: add managed model registry prometheus config handling logic, part of RHOAIENG-4273 (opendatahub-io#1150) (cherry picked from commit 72fc80f) Adjusted Kueue and TrainingOperator rules Signed-off-by: Yauheni Kaliuta <[email protected]> feat: add default cert for model registry, fixes RHOAIENG-9909 (opendatahub-io#1165) Conflicts: ApplyParams arguments due to missing: d84cd33 ("update: remove unnecessary param from ApplyParams() (opendatahub-io#1180)") * feat: add default cert for model registry, fixes RHOAIENG-9909 * fix: fixed lint errors * fix: add servicemesh feature check for MR, add MR enable check in e2e default cert test * fix: changed MR servicemesh status check to look for Managed state * fix: ignore missing model-registry default cert if already removed (cherry picked from commit 4c411a6) feat: add servicemeshmember for model registry namespace, fixes RHOAIENG-11831 (opendatahub-io#1202) * feat: add servicemeshmember for model registry namespace, fixes RHOAIENG-11831 * fix: ignore error if MR smm already exists * code cleanup for readability Co-authored-by: Bartosz Majsak <[email protected]> * Avoid shadowing package name in variable Co-authored-by: Bartosz Majsak <[email protected]> * chore: rename createServicemeshMember to enrollToServiceMesh, add log messages --------- Co-authored-by: Bartosz Majsak <[email protected]> (cherry picked from commit 8f3d013) feat: add managed model registry prometheus job, metrics, and alering rules, fixes RHOAIENG-4273 (cherry picked from commit f811d67) modelregistry: partial: fix: add check for all platform offering on components Partial application of ab7e04e ("fix: add check for all platform offering on components (opendatahub-io#1205)") ModelRegistry related. Signed-off-by: Yauheni Kaliuta <[email protected]> feat: added shared registries namespace property in model registry dsc component, fixes RHOAIENG-12335 (opendatahub-io#1221) * feat: added shared registries namespace property in model registry dsc component, fixes RHOAIENG-12335 Signed-off-by: Dhiraj Bokde <[email protected]> * fix: added registriesNamespace property in references to model registry component in docs, samples, etc. Signed-off-by: Dhiraj Bokde <[email protected]> * fix: updated api-overview.md Signed-off-by: Dhiraj Bokde <[email protected]> * fix: add missing field in setupDSCInstance() Signed-off-by: Dhiraj Bokde <[email protected]> * fix: added debug log for failing e2e test * debug: added log messages in test dsc creation Signed-off-by: Dhiraj Bokde <[email protected]> * debug: make registriesNamespace omitempty so apiserver will set the default value, clean testDSCCreation with more log messages Signed-off-by: Dhiraj Bokde <[email protected]> * update: modelregistry with namespace - add namespace for rhoai case - remove omitemptry on namespace: if user does not set it, it will get default value to use. since its type is string Signed-off-by: Wen Zhou <[email protected]> * fix: test need to update for modelreg namespace Signed-off-by: Wen Zhou <[email protected]> * update: cleanup debug info in test cases Signed-off-by: Wen Zhou <[email protected]> * fix: make registriesNamespace immutability check dynamic in cel validation rule * fix: refactor validation rule, set registriesNamespace to optional, add patch func in modelregistry to set default value * fix: add defaulting webhook including envtest, remove patch from modelregistry component * fix: add namespace name pattern for registriesNamespace, allow empty string to replace with default value * fix: use unique webhook names * fix: don't change existing validating webhook name to avoid upgrade issues * feat: add model registry registriesNamespace in DSC status * update: - move ModelRegistryStatus from ModelReg into status - update validation rule for namespace: - when update is to removed/unmanaged modelreg: regardless previous state, can change name and set to removed - upgrade 2.13 to 2.14 when no NS set in 2.13 - when update is from remove/unmanaged: e.g change from removed to managed and change name at the same tie - keep same namespace, regardless state - reduce print on passed allowed webhook request - set to omitemptry so required is not add in the CSV - fix review comments: - move update status after reconcile is successful - set to use const for caching on ModeReg namespace Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Dhiraj Bokde <[email protected]> Signed-off-by: Wen Zhou <[email protected]> Co-authored-by: Wen Zhou <[email protected]> (cherry picked from commit dd3df21) fix: only replace/set default model reg namespace by webhook if component is enabled - when modelreg is not set in DSC - when modelreg is set to be Removed these two cases should not block operation, for backwards compataible Signed-off-by: Wen Zhou <[email protected]> (cherry picked from commit 03f6c0b) Update autogenerated files run `make generate manifests api-docs` Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: replace odh-model-registries with rhoai-model-registries Fix names of default registries namespace treewide. Signed-off-by: Yauheni Kaliuta <[email protected]> tests: e2e: disable modelregistry It is not GA yet, disable for now to avoid possible problems. Signed-off-by: Yauheni Kaliuta <[email protected]> get_all_manifests.sh: modelregistry: use rhoai-2.14 branch Use versioned branch/tag like other components. Signed-off-by: Yauheni Kaliuta <[email protected]> Revert "get_all_manifests.sh: modelregistry: use rhoai-2.14 branch" There is no yet rhoai-2.14 branch for modelregistry. This reverts commit 4c7d83a. Signed-off-by: Yauheni Kaliuta <[email protected]>
…o#776) Squashed commit due to buildability since ComponentInterface has changed. Other patches squashed as well to avoid possible double squashing on merging. modelregistry: regenerate autogenerated files Run `make generate manifests` after all the changes Signed-off-by: Yauheni Kaliuta <[email protected]> feat: Add ModelRegistry component (opendatahub-io#775) (opendatahub-io#776) * feat: Add ModelRegistry component (opendatahub-io#775) * fix: Fix modelregistry odh overlays path * fix: fix dsc_create_test tests err nil check * fix: refactor ModelRegistry.ReconcileComponent for new parameters * chore: added modelregistry to README.md * fix: add missing rbac rules for deploymentconfigs and daemonsets * chore: code lint cleanup * fix: added check for nil DevFlags in model-registry component * fix: add nil check for dscispec.DevFlags in model-registry ReconcileComponent * fix: remove RBAC rules for daemonsets and deploymentconfigs * fix(chore): fix lint errors in dsc_deletion_test.go (cherry picked from commit 112d3f1) Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: removes SetImageParamsMap from ComponentInterface (opendatahub-io#897) Partial application of already applied commit d10a764 Author: Bartosz Majsak <[email protected]> Date: Thu Mar 7 15:43:37 2024 +0100 chore: removes SetImageParamsMap from ComponentInterface (opendatahub-io#897) As it's not used by any component, acting as a simple pass-return loop. This makes the API contract a bit cleaner. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: remove the need of passing rest config (opendatahub-io#895) Partial application of already applied commit ca7fa98 Author: Bartosz Majsak <[email protected]> Date: Fri Mar 8 17:40:54 2024 +0100 chore: remove the need of passing rest config (opendatahub-io#895) * chore: fixes ComponentInterface docs By removing reference to non-existing func. This function has been in use outside of this component. * fix: removes rest config As we are already using client.Client interface we do not have to instantiate other typed clients to e.g. list resources using their own funcs. Generic client.Client is sufficient for these needs. Additionally this change adds ctx propogation for these calls. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: feat(logger): for both controller level and component level (opendatahub-io#837) Partial application of already applied commit d8a83a2 Author: Wen Zhou <[email protected]> Date: Mon Apr 1 22:06:16 2024 +0200 feat(logger): for both controller level and component level (opendatahub-io#837) * feat(logger): for both controller level and component level Signed-off-by: Wen Zhou <[email protected]> * update(logger): use logr instead of uber's zap Signed-off-by: Wen Zhou <[email protected]> * update: do not log error only print Signed-off-by: Wen Zhou <[email protected]> * update: use zap.Options for both and tune levels Signed-off-by: Wen Zhou <[email protected]> * update: move setting into common function Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> update(modelregistry): rename image name (opendatahub-io#877) Signed-off-by: Wen Zhou <[email protected]> (cherry picked from commit b4e4d6f) modelregistry: partial: chore: cleanup duplicated functions packages and add more for godoc (opendatahub-io#981) Partial application of already applied commit 96c85f2 Author: Wen Zhou <[email protected]> Date: Tue Apr 23 14:05:24 2024 +0200 chore: cleanup duplicated functions packages and add more for godoc (opendatahub-io#981) * chore: cleanup duplicated functions/package and add godoc - move GetPlatform() from deploy package to cluster package - move const ManagedRhods SelfManagedRhods OpenDataHub from deploy to cluster package - move WaitForDeploymentAvailable() monitoring package to cluster package - remove monitoring package - move UpdatePodSecurityRolebinding() from common package to cluster package - deprecate GetDomain from common package, to only use GetDomain from cluster package. - remove gvk package, move its GVK to cluster package - move DeleteExistingSubscription() from deploy package to upgrade package - do not export getSubscription() Signed-off-by: Wen Zhou <[email protected]> * update: remove gvk into one file but under cluster package Signed-off-by: Wen Zhou <[email protected]> * update: rename variable, removing GVK from it Signed-off-by: Wen Zhou <[email protected]> * update: move gvk into a sub package under cluster Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> feat(mr): create namespace for Model Registry (opendatahub-io#930) * feat(mr): create namespace for smm Signed-off-by: Wen Zhou <[email protected]> * fix: rebase Signed-off-by: Zhou, Wen <[email protected]> * update: code review comments Signed-off-by: Wen Zhou <[email protected]> * fix(doc): wrong comments Signed-off-by: Wen Zhou <[email protected]> * update: remove label to keep namespace even opreator is uninstalled Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> (cherry picked from commit 1188ce1) feat(mr): add model registry odh extras manifests, fixes RHOAIENG-5112 (opendatahub-io#953) (cherry picked from commit 7c3e81b) modelregistry: partial: chore: Open up util functions for context propagation (opendatahub-io#1033) Partial application of already applied commit 105adae Author: Aslak Knutsen <[email protected]> Date: Tue Jun 4 15:16:21 2024 +0200 chore: Open up util functions for context propagation (opendatahub-io#1033) context should be determined by the caller and propagated down the call chain. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: remove duplicated platform call in each component (opendatahub-io#1055) Partial application of already applied commit 1b04761 Author: Wen Zhou <[email protected]> Date: Fri Jun 14 14:47:33 2024 +0200 chore: remove duplicated platform call in each component (opendatahub-io#1055) - get in DSC and pass into compoment Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: update api docs run `make api-docs` add +groupName=datasciencecluster.opendatahub.io On backporting of 1b86e42 ("Update readme.md (opendatahub-io#890)") Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore(lint): enable contextcheck and containedctx (opendatahub-io#1070) Partial application of already applied: commit 06e21a4 Author: Luca Burgazzoli <[email protected]> Date: Tue Jun 25 17:15:13 2024 +0200 chore(lint): enable contextcheck and containedctx (opendatahub-io#1070) * chore(lint): enable contextcheck Signed-off-by: Luca Burgazzoli <[email protected]> * chore(lint): enable containedctx Signed-off-by: Luca Burgazzoli <[email protected]> * Fix PR review findings * Fix rebase --------- Signed-off-by: Luca Burgazzoli <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> refactor: dashboard with new manifests structure (opendatahub-io#1065) Partial application of already applied: commit 438f4c2 Author: Wen Zhou <[email protected]> Date: Tue Jul 2 16:56:25 2024 +0200 refactor: dashboard with new manifests structure (opendatahub-io#1065) * refactor: dashboard with new manifests structure - change type of platform, skip convert to string - add more support for ApplyParam() to not only take ENV but also anything from ExtraParamMaps * update: simplify override function * update: add value for Unknown platform --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> feat: add managed model registry prometheus config handling logic, part of RHOAIENG-4273 (opendatahub-io#1150) (cherry picked from commit 72fc80f) Adjusted Kueue and TrainingOperator rules Signed-off-by: Yauheni Kaliuta <[email protected]> feat: add default cert for model registry, fixes RHOAIENG-9909 (opendatahub-io#1165) Conflicts: ApplyParams arguments due to missing: d84cd33 ("update: remove unnecessary param from ApplyParams() (opendatahub-io#1180)") * feat: add default cert for model registry, fixes RHOAIENG-9909 * fix: fixed lint errors * fix: add servicemesh feature check for MR, add MR enable check in e2e default cert test * fix: changed MR servicemesh status check to look for Managed state * fix: ignore missing model-registry default cert if already removed (cherry picked from commit 4c411a6) feat: add servicemeshmember for model registry namespace, fixes RHOAIENG-11831 (opendatahub-io#1202) * feat: add servicemeshmember for model registry namespace, fixes RHOAIENG-11831 * fix: ignore error if MR smm already exists * code cleanup for readability Co-authored-by: Bartosz Majsak <[email protected]> * Avoid shadowing package name in variable Co-authored-by: Bartosz Majsak <[email protected]> * chore: rename createServicemeshMember to enrollToServiceMesh, add log messages --------- Co-authored-by: Bartosz Majsak <[email protected]> (cherry picked from commit 8f3d013) feat: add managed model registry prometheus job, metrics, and alering rules, fixes RHOAIENG-4273 (cherry picked from commit f811d67) modelregistry: partial: fix: add check for all platform offering on components Partial application of ab7e04e ("fix: add check for all platform offering on components (opendatahub-io#1205)") ModelRegistry related. Signed-off-by: Yauheni Kaliuta <[email protected]> feat: added shared registries namespace property in model registry dsc component, fixes RHOAIENG-12335 (opendatahub-io#1221) * feat: added shared registries namespace property in model registry dsc component, fixes RHOAIENG-12335 Signed-off-by: Dhiraj Bokde <[email protected]> * fix: added registriesNamespace property in references to model registry component in docs, samples, etc. Signed-off-by: Dhiraj Bokde <[email protected]> * fix: updated api-overview.md Signed-off-by: Dhiraj Bokde <[email protected]> * fix: add missing field in setupDSCInstance() Signed-off-by: Dhiraj Bokde <[email protected]> * fix: added debug log for failing e2e test * debug: added log messages in test dsc creation Signed-off-by: Dhiraj Bokde <[email protected]> * debug: make registriesNamespace omitempty so apiserver will set the default value, clean testDSCCreation with more log messages Signed-off-by: Dhiraj Bokde <[email protected]> * update: modelregistry with namespace - add namespace for rhoai case - remove omitemptry on namespace: if user does not set it, it will get default value to use. since its type is string Signed-off-by: Wen Zhou <[email protected]> * fix: test need to update for modelreg namespace Signed-off-by: Wen Zhou <[email protected]> * update: cleanup debug info in test cases Signed-off-by: Wen Zhou <[email protected]> * fix: make registriesNamespace immutability check dynamic in cel validation rule * fix: refactor validation rule, set registriesNamespace to optional, add patch func in modelregistry to set default value * fix: add defaulting webhook including envtest, remove patch from modelregistry component * fix: add namespace name pattern for registriesNamespace, allow empty string to replace with default value * fix: use unique webhook names * fix: don't change existing validating webhook name to avoid upgrade issues * feat: add model registry registriesNamespace in DSC status * update: - move ModelRegistryStatus from ModelReg into status - update validation rule for namespace: - when update is to removed/unmanaged modelreg: regardless previous state, can change name and set to removed - upgrade 2.13 to 2.14 when no NS set in 2.13 - when update is from remove/unmanaged: e.g change from removed to managed and change name at the same tie - keep same namespace, regardless state - reduce print on passed allowed webhook request - set to omitemptry so required is not add in the CSV - fix review comments: - move update status after reconcile is successful - set to use const for caching on ModeReg namespace Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Dhiraj Bokde <[email protected]> Signed-off-by: Wen Zhou <[email protected]> Co-authored-by: Wen Zhou <[email protected]> (cherry picked from commit dd3df21) fix: only replace/set default model reg namespace by webhook if component is enabled - when modelreg is not set in DSC - when modelreg is set to be Removed these two cases should not block operation, for backwards compataible Signed-off-by: Wen Zhou <[email protected]> (cherry picked from commit 03f6c0b) Update autogenerated files run `make generate manifests api-docs` Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: replace odh-model-registries with rhoai-model-registries Fix names of default registries namespace treewide. Signed-off-by: Yauheni Kaliuta <[email protected]> tests: e2e: disable modelregistry It is not GA yet, disable for now to avoid possible problems. Signed-off-by: Yauheni Kaliuta <[email protected]> get_all_manifests.sh: modelregistry: use rhoai-2.14 branch Use versioned branch/tag like other components. Signed-off-by: Yauheni Kaliuta <[email protected]> Revert "get_all_manifests.sh: modelregistry: use rhoai-2.14 branch" There is no yet rhoai-2.14 branch for modelregistry. This reverts commit 4c7d83a. Signed-off-by: Yauheni Kaliuta <[email protected]>
…o#776) Squashed commit due to buildability since ComponentInterface has changed. Other patches squashed as well to avoid possible double squashing on merging. modelregistry: regenerate autogenerated files Run `make generate manifests` after all the changes Signed-off-by: Yauheni Kaliuta <[email protected]> feat: Add ModelRegistry component (opendatahub-io#775) (opendatahub-io#776) * feat: Add ModelRegistry component (opendatahub-io#775) * fix: Fix modelregistry odh overlays path * fix: fix dsc_create_test tests err nil check * fix: refactor ModelRegistry.ReconcileComponent for new parameters * chore: added modelregistry to README.md * fix: add missing rbac rules for deploymentconfigs and daemonsets * chore: code lint cleanup * fix: added check for nil DevFlags in model-registry component * fix: add nil check for dscispec.DevFlags in model-registry ReconcileComponent * fix: remove RBAC rules for daemonsets and deploymentconfigs * fix(chore): fix lint errors in dsc_deletion_test.go (cherry picked from commit 112d3f1) Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: removes SetImageParamsMap from ComponentInterface (opendatahub-io#897) Partial application of already applied commit d10a764 Author: Bartosz Majsak <[email protected]> Date: Thu Mar 7 15:43:37 2024 +0100 chore: removes SetImageParamsMap from ComponentInterface (opendatahub-io#897) As it's not used by any component, acting as a simple pass-return loop. This makes the API contract a bit cleaner. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: remove the need of passing rest config (opendatahub-io#895) Partial application of already applied commit ca7fa98 Author: Bartosz Majsak <[email protected]> Date: Fri Mar 8 17:40:54 2024 +0100 chore: remove the need of passing rest config (opendatahub-io#895) * chore: fixes ComponentInterface docs By removing reference to non-existing func. This function has been in use outside of this component. * fix: removes rest config As we are already using client.Client interface we do not have to instantiate other typed clients to e.g. list resources using their own funcs. Generic client.Client is sufficient for these needs. Additionally this change adds ctx propogation for these calls. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: feat(logger): for both controller level and component level (opendatahub-io#837) Partial application of already applied commit d8a83a2 Author: Wen Zhou <[email protected]> Date: Mon Apr 1 22:06:16 2024 +0200 feat(logger): for both controller level and component level (opendatahub-io#837) * feat(logger): for both controller level and component level Signed-off-by: Wen Zhou <[email protected]> * update(logger): use logr instead of uber's zap Signed-off-by: Wen Zhou <[email protected]> * update: do not log error only print Signed-off-by: Wen Zhou <[email protected]> * update: use zap.Options for both and tune levels Signed-off-by: Wen Zhou <[email protected]> * update: move setting into common function Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> update(modelregistry): rename image name (opendatahub-io#877) Signed-off-by: Wen Zhou <[email protected]> (cherry picked from commit b4e4d6f) modelregistry: partial: chore: cleanup duplicated functions packages and add more for godoc (opendatahub-io#981) Partial application of already applied commit 96c85f2 Author: Wen Zhou <[email protected]> Date: Tue Apr 23 14:05:24 2024 +0200 chore: cleanup duplicated functions packages and add more for godoc (opendatahub-io#981) * chore: cleanup duplicated functions/package and add godoc - move GetPlatform() from deploy package to cluster package - move const ManagedRhods SelfManagedRhods OpenDataHub from deploy to cluster package - move WaitForDeploymentAvailable() monitoring package to cluster package - remove monitoring package - move UpdatePodSecurityRolebinding() from common package to cluster package - deprecate GetDomain from common package, to only use GetDomain from cluster package. - remove gvk package, move its GVK to cluster package - move DeleteExistingSubscription() from deploy package to upgrade package - do not export getSubscription() Signed-off-by: Wen Zhou <[email protected]> * update: remove gvk into one file but under cluster package Signed-off-by: Wen Zhou <[email protected]> * update: rename variable, removing GVK from it Signed-off-by: Wen Zhou <[email protected]> * update: move gvk into a sub package under cluster Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> feat(mr): create namespace for Model Registry (opendatahub-io#930) * feat(mr): create namespace for smm Signed-off-by: Wen Zhou <[email protected]> * fix: rebase Signed-off-by: Zhou, Wen <[email protected]> * update: code review comments Signed-off-by: Wen Zhou <[email protected]> * fix(doc): wrong comments Signed-off-by: Wen Zhou <[email protected]> * update: remove label to keep namespace even opreator is uninstalled Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> (cherry picked from commit 1188ce1) feat(mr): add model registry odh extras manifests, fixes RHOAIENG-5112 (opendatahub-io#953) (cherry picked from commit 7c3e81b) modelregistry: partial: chore: Open up util functions for context propagation (opendatahub-io#1033) Partial application of already applied commit 105adae Author: Aslak Knutsen <[email protected]> Date: Tue Jun 4 15:16:21 2024 +0200 chore: Open up util functions for context propagation (opendatahub-io#1033) context should be determined by the caller and propagated down the call chain. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: remove duplicated platform call in each component (opendatahub-io#1055) Partial application of already applied commit 1b04761 Author: Wen Zhou <[email protected]> Date: Fri Jun 14 14:47:33 2024 +0200 chore: remove duplicated platform call in each component (opendatahub-io#1055) - get in DSC and pass into compoment Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: update api docs run `make api-docs` add +groupName=datasciencecluster.opendatahub.io On backporting of 1b86e42 ("Update readme.md (opendatahub-io#890)") Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore(lint): enable contextcheck and containedctx (opendatahub-io#1070) Partial application of already applied: commit 06e21a4 Author: Luca Burgazzoli <[email protected]> Date: Tue Jun 25 17:15:13 2024 +0200 chore(lint): enable contextcheck and containedctx (opendatahub-io#1070) * chore(lint): enable contextcheck Signed-off-by: Luca Burgazzoli <[email protected]> * chore(lint): enable containedctx Signed-off-by: Luca Burgazzoli <[email protected]> * Fix PR review findings * Fix rebase --------- Signed-off-by: Luca Burgazzoli <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> refactor: dashboard with new manifests structure (opendatahub-io#1065) Partial application of already applied: commit 438f4c2 Author: Wen Zhou <[email protected]> Date: Tue Jul 2 16:56:25 2024 +0200 refactor: dashboard with new manifests structure (opendatahub-io#1065) * refactor: dashboard with new manifests structure - change type of platform, skip convert to string - add more support for ApplyParam() to not only take ENV but also anything from ExtraParamMaps * update: simplify override function * update: add value for Unknown platform --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> feat: add managed model registry prometheus config handling logic, part of RHOAIENG-4273 (opendatahub-io#1150) (cherry picked from commit 72fc80f) Adjusted Kueue and TrainingOperator rules Signed-off-by: Yauheni Kaliuta <[email protected]> feat: add default cert for model registry, fixes RHOAIENG-9909 (opendatahub-io#1165) Conflicts: ApplyParams arguments due to missing: d84cd33 ("update: remove unnecessary param from ApplyParams() (opendatahub-io#1180)") * feat: add default cert for model registry, fixes RHOAIENG-9909 * fix: fixed lint errors * fix: add servicemesh feature check for MR, add MR enable check in e2e default cert test * fix: changed MR servicemesh status check to look for Managed state * fix: ignore missing model-registry default cert if already removed (cherry picked from commit 4c411a6) feat: add servicemeshmember for model registry namespace, fixes RHOAIENG-11831 (opendatahub-io#1202) * feat: add servicemeshmember for model registry namespace, fixes RHOAIENG-11831 * fix: ignore error if MR smm already exists * code cleanup for readability Co-authored-by: Bartosz Majsak <[email protected]> * Avoid shadowing package name in variable Co-authored-by: Bartosz Majsak <[email protected]> * chore: rename createServicemeshMember to enrollToServiceMesh, add log messages --------- Co-authored-by: Bartosz Majsak <[email protected]> (cherry picked from commit 8f3d013) feat: add managed model registry prometheus job, metrics, and alering rules, fixes RHOAIENG-4273 (cherry picked from commit f811d67) modelregistry: partial: fix: add check for all platform offering on components Partial application of ab7e04e ("fix: add check for all platform offering on components (opendatahub-io#1205)") ModelRegistry related. Signed-off-by: Yauheni Kaliuta <[email protected]> feat: added shared registries namespace property in model registry dsc component, fixes RHOAIENG-12335 (opendatahub-io#1221) * feat: added shared registries namespace property in model registry dsc component, fixes RHOAIENG-12335 Signed-off-by: Dhiraj Bokde <[email protected]> * fix: added registriesNamespace property in references to model registry component in docs, samples, etc. Signed-off-by: Dhiraj Bokde <[email protected]> * fix: updated api-overview.md Signed-off-by: Dhiraj Bokde <[email protected]> * fix: add missing field in setupDSCInstance() Signed-off-by: Dhiraj Bokde <[email protected]> * fix: added debug log for failing e2e test * debug: added log messages in test dsc creation Signed-off-by: Dhiraj Bokde <[email protected]> * debug: make registriesNamespace omitempty so apiserver will set the default value, clean testDSCCreation with more log messages Signed-off-by: Dhiraj Bokde <[email protected]> * update: modelregistry with namespace - add namespace for rhoai case - remove omitemptry on namespace: if user does not set it, it will get default value to use. since its type is string Signed-off-by: Wen Zhou <[email protected]> * fix: test need to update for modelreg namespace Signed-off-by: Wen Zhou <[email protected]> * update: cleanup debug info in test cases Signed-off-by: Wen Zhou <[email protected]> * fix: make registriesNamespace immutability check dynamic in cel validation rule * fix: refactor validation rule, set registriesNamespace to optional, add patch func in modelregistry to set default value * fix: add defaulting webhook including envtest, remove patch from modelregistry component * fix: add namespace name pattern for registriesNamespace, allow empty string to replace with default value * fix: use unique webhook names * fix: don't change existing validating webhook name to avoid upgrade issues * feat: add model registry registriesNamespace in DSC status * update: - move ModelRegistryStatus from ModelReg into status - update validation rule for namespace: - when update is to removed/unmanaged modelreg: regardless previous state, can change name and set to removed - upgrade 2.13 to 2.14 when no NS set in 2.13 - when update is from remove/unmanaged: e.g change from removed to managed and change name at the same tie - keep same namespace, regardless state - reduce print on passed allowed webhook request - set to omitemptry so required is not add in the CSV - fix review comments: - move update status after reconcile is successful - set to use const for caching on ModeReg namespace Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Dhiraj Bokde <[email protected]> Signed-off-by: Wen Zhou <[email protected]> Co-authored-by: Wen Zhou <[email protected]> (cherry picked from commit dd3df21) fix: only replace/set default model reg namespace by webhook if component is enabled - when modelreg is not set in DSC - when modelreg is set to be Removed these two cases should not block operation, for backwards compataible Signed-off-by: Wen Zhou <[email protected]> (cherry picked from commit 03f6c0b) Update autogenerated files run `make generate manifests api-docs` Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: replace odh-model-registries with rhoai-model-registries Fix names of default registries namespace treewide. Signed-off-by: Yauheni Kaliuta <[email protected]> tests: e2e: disable modelregistry It is not GA yet, disable for now to avoid possible problems. Signed-off-by: Yauheni Kaliuta <[email protected]> get_all_manifests.sh: modelregistry: use rhoai-2.14 branch Use versioned branch/tag like other components. Signed-off-by: Yauheni Kaliuta <[email protected]>
…o#776) Squashed commit due to buildability since ComponentInterface has changed. Other patches squashed as well to avoid possible double squashing on merging. Set management state to Removed since it is not modelregistry: regenerate autogenerated files Run `make generate manifests` after all the changes Signed-off-by: Yauheni Kaliuta <[email protected]> feat: Add ModelRegistry component (opendatahub-io#775) (opendatahub-io#776) * feat: Add ModelRegistry component (opendatahub-io#775) * fix: Fix modelregistry odh overlays path * fix: fix dsc_create_test tests err nil check * fix: refactor ModelRegistry.ReconcileComponent for new parameters * chore: added modelregistry to README.md * fix: add missing rbac rules for deploymentconfigs and daemonsets * chore: code lint cleanup * fix: added check for nil DevFlags in model-registry component * fix: add nil check for dscispec.DevFlags in model-registry ReconcileComponent * fix: remove RBAC rules for daemonsets and deploymentconfigs * fix(chore): fix lint errors in dsc_deletion_test.go (cherry picked from commit 112d3f1) Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: removes SetImageParamsMap from ComponentInterface (opendatahub-io#897) Partial application of already applied commit d10a764 Author: Bartosz Majsak <[email protected]> Date: Thu Mar 7 15:43:37 2024 +0100 chore: removes SetImageParamsMap from ComponentInterface (opendatahub-io#897) As it's not used by any component, acting as a simple pass-return loop. This makes the API contract a bit cleaner. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: remove the need of passing rest config (opendatahub-io#895) Partial application of already applied commit ca7fa98 Author: Bartosz Majsak <[email protected]> Date: Fri Mar 8 17:40:54 2024 +0100 chore: remove the need of passing rest config (opendatahub-io#895) * chore: fixes ComponentInterface docs By removing reference to non-existing func. This function has been in use outside of this component. * fix: removes rest config As we are already using client.Client interface we do not have to instantiate other typed clients to e.g. list resources using their own funcs. Generic client.Client is sufficient for these needs. Additionally this change adds ctx propogation for these calls. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: feat(logger): for both controller level and component level (opendatahub-io#837) Partial application of already applied commit d8a83a2 Author: Wen Zhou <[email protected]> Date: Mon Apr 1 22:06:16 2024 +0200 feat(logger): for both controller level and component level (opendatahub-io#837) * feat(logger): for both controller level and component level Signed-off-by: Wen Zhou <[email protected]> * update(logger): use logr instead of uber's zap Signed-off-by: Wen Zhou <[email protected]> * update: do not log error only print Signed-off-by: Wen Zhou <[email protected]> * update: use zap.Options for both and tune levels Signed-off-by: Wen Zhou <[email protected]> * update: move setting into common function Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> update(modelregistry): rename image name (opendatahub-io#877) Signed-off-by: Wen Zhou <[email protected]> (cherry picked from commit b4e4d6f) modelregistry: partial: chore: cleanup duplicated functions packages and add more for godoc (opendatahub-io#981) Partial application of already applied commit 96c85f2 Author: Wen Zhou <[email protected]> Date: Tue Apr 23 14:05:24 2024 +0200 chore: cleanup duplicated functions packages and add more for godoc (opendatahub-io#981) * chore: cleanup duplicated functions/package and add godoc - move GetPlatform() from deploy package to cluster package - move const ManagedRhods SelfManagedRhods OpenDataHub from deploy to cluster package - move WaitForDeploymentAvailable() monitoring package to cluster package - remove monitoring package - move UpdatePodSecurityRolebinding() from common package to cluster package - deprecate GetDomain from common package, to only use GetDomain from cluster package. - remove gvk package, move its GVK to cluster package - move DeleteExistingSubscription() from deploy package to upgrade package - do not export getSubscription() Signed-off-by: Wen Zhou <[email protected]> * update: remove gvk into one file but under cluster package Signed-off-by: Wen Zhou <[email protected]> * update: rename variable, removing GVK from it Signed-off-by: Wen Zhou <[email protected]> * update: move gvk into a sub package under cluster Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> feat(mr): create namespace for Model Registry (opendatahub-io#930) * feat(mr): create namespace for smm Signed-off-by: Wen Zhou <[email protected]> * fix: rebase Signed-off-by: Zhou, Wen <[email protected]> * update: code review comments Signed-off-by: Wen Zhou <[email protected]> * fix(doc): wrong comments Signed-off-by: Wen Zhou <[email protected]> * update: remove label to keep namespace even opreator is uninstalled Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> (cherry picked from commit 1188ce1) feat(mr): add model registry odh extras manifests, fixes RHOAIENG-5112 (opendatahub-io#953) (cherry picked from commit 7c3e81b) modelregistry: partial: chore: Open up util functions for context propagation (opendatahub-io#1033) Partial application of already applied commit 105adae Author: Aslak Knutsen <[email protected]> Date: Tue Jun 4 15:16:21 2024 +0200 chore: Open up util functions for context propagation (opendatahub-io#1033) context should be determined by the caller and propagated down the call chain. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: remove duplicated platform call in each component (opendatahub-io#1055) Partial application of already applied commit 1b04761 Author: Wen Zhou <[email protected]> Date: Fri Jun 14 14:47:33 2024 +0200 chore: remove duplicated platform call in each component (opendatahub-io#1055) - get in DSC and pass into compoment Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: update api docs run `make api-docs` add +groupName=datasciencecluster.opendatahub.io On backporting of 1b86e42 ("Update readme.md (opendatahub-io#890)") Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore(lint): enable contextcheck and containedctx (opendatahub-io#1070) Partial application of already applied: commit 06e21a4 Author: Luca Burgazzoli <[email protected]> Date: Tue Jun 25 17:15:13 2024 +0200 chore(lint): enable contextcheck and containedctx (opendatahub-io#1070) * chore(lint): enable contextcheck Signed-off-by: Luca Burgazzoli <[email protected]> * chore(lint): enable containedctx Signed-off-by: Luca Burgazzoli <[email protected]> * Fix PR review findings * Fix rebase --------- Signed-off-by: Luca Burgazzoli <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> refactor: dashboard with new manifests structure (opendatahub-io#1065) Partial application of already applied: commit 438f4c2 Author: Wen Zhou <[email protected]> Date: Tue Jul 2 16:56:25 2024 +0200 refactor: dashboard with new manifests structure (opendatahub-io#1065) * refactor: dashboard with new manifests structure - change type of platform, skip convert to string - add more support for ApplyParam() to not only take ENV but also anything from ExtraParamMaps * update: simplify override function * update: add value for Unknown platform --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> feat: add managed model registry prometheus config handling logic, part of RHOAIENG-4273 (opendatahub-io#1150) (cherry picked from commit 72fc80f) Adjusted Kueue and TrainingOperator rules Signed-off-by: Yauheni Kaliuta <[email protected]> feat: add default cert for model registry, fixes RHOAIENG-9909 (opendatahub-io#1165) Conflicts: ApplyParams arguments due to missing: d84cd33 ("update: remove unnecessary param from ApplyParams() (opendatahub-io#1180)") * feat: add default cert for model registry, fixes RHOAIENG-9909 * fix: fixed lint errors * fix: add servicemesh feature check for MR, add MR enable check in e2e default cert test * fix: changed MR servicemesh status check to look for Managed state * fix: ignore missing model-registry default cert if already removed (cherry picked from commit 4c411a6) feat: add servicemeshmember for model registry namespace, fixes RHOAIENG-11831 (opendatahub-io#1202) * feat: add servicemeshmember for model registry namespace, fixes RHOAIENG-11831 * fix: ignore error if MR smm already exists * code cleanup for readability Co-authored-by: Bartosz Majsak <[email protected]> * Avoid shadowing package name in variable Co-authored-by: Bartosz Majsak <[email protected]> * chore: rename createServicemeshMember to enrollToServiceMesh, add log messages --------- Co-authored-by: Bartosz Majsak <[email protected]> (cherry picked from commit 8f3d013) feat: add managed model registry prometheus job, metrics, and alering rules, fixes RHOAIENG-4273 (cherry picked from commit f811d67) modelregistry: partial: fix: add check for all platform offering on components Partial application of ab7e04e ("fix: add check for all platform offering on components (opendatahub-io#1205)") ModelRegistry related. Signed-off-by: Yauheni Kaliuta <[email protected]> feat: added shared registries namespace property in model registry dsc component, fixes RHOAIENG-12335 (opendatahub-io#1221) * feat: added shared registries namespace property in model registry dsc component, fixes RHOAIENG-12335 Signed-off-by: Dhiraj Bokde <[email protected]> * fix: added registriesNamespace property in references to model registry component in docs, samples, etc. Signed-off-by: Dhiraj Bokde <[email protected]> * fix: updated api-overview.md Signed-off-by: Dhiraj Bokde <[email protected]> * fix: add missing field in setupDSCInstance() Signed-off-by: Dhiraj Bokde <[email protected]> * fix: added debug log for failing e2e test * debug: added log messages in test dsc creation Signed-off-by: Dhiraj Bokde <[email protected]> * debug: make registriesNamespace omitempty so apiserver will set the default value, clean testDSCCreation with more log messages Signed-off-by: Dhiraj Bokde <[email protected]> * update: modelregistry with namespace - add namespace for rhoai case - remove omitemptry on namespace: if user does not set it, it will get default value to use. since its type is string Signed-off-by: Wen Zhou <[email protected]> * fix: test need to update for modelreg namespace Signed-off-by: Wen Zhou <[email protected]> * update: cleanup debug info in test cases Signed-off-by: Wen Zhou <[email protected]> * fix: make registriesNamespace immutability check dynamic in cel validation rule * fix: refactor validation rule, set registriesNamespace to optional, add patch func in modelregistry to set default value * fix: add defaulting webhook including envtest, remove patch from modelregistry component * fix: add namespace name pattern for registriesNamespace, allow empty string to replace with default value * fix: use unique webhook names * fix: don't change existing validating webhook name to avoid upgrade issues * feat: add model registry registriesNamespace in DSC status * update: - move ModelRegistryStatus from ModelReg into status - update validation rule for namespace: - when update is to removed/unmanaged modelreg: regardless previous state, can change name and set to removed - upgrade 2.13 to 2.14 when no NS set in 2.13 - when update is from remove/unmanaged: e.g change from removed to managed and change name at the same tie - keep same namespace, regardless state - reduce print on passed allowed webhook request - set to omitemptry so required is not add in the CSV - fix review comments: - move update status after reconcile is successful - set to use const for caching on ModeReg namespace Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Dhiraj Bokde <[email protected]> Signed-off-by: Wen Zhou <[email protected]> Co-authored-by: Wen Zhou <[email protected]> (cherry picked from commit dd3df21) fix: only replace/set default model reg namespace by webhook if component is enabled - when modelreg is not set in DSC - when modelreg is set to be Removed these two cases should not block operation, for backwards compataible Signed-off-by: Wen Zhou <[email protected]> (cherry picked from commit 03f6c0b) Update autogenerated files run `make generate manifests api-docs` Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: replace odh-model-registries with rhoai-model-registries Fix names of default registries namespace treewide. Signed-off-by: Yauheni Kaliuta <[email protected]> tests: e2e: disable modelregistry It is not GA yet, disable for now to avoid possible problems. Signed-off-by: Yauheni Kaliuta <[email protected]> get_all_manifests.sh: modelregistry: use rhoai-2.14 branch Use versioned branch/tag like other components. Signed-off-by: Yauheni Kaliuta <[email protected]> Update config/samples/datasciencecluster_v1_datasciencecluster.yaml Co-authored-by: Wen Zhou <[email protected]> Update bundle/manifests/rhods-operator.clusterserviceversion.yaml Co-authored-by: Wen Zhou <[email protected]>
…o#776) Squashed commit due to buildability since ComponentInterface has changed. Other patches squashed as well to avoid possible double squashing on merging. Set management state to Removed since it is not modelregistry: regenerate autogenerated files Run `make generate manifests` after all the changes Signed-off-by: Yauheni Kaliuta <[email protected]> feat: Add ModelRegistry component (opendatahub-io#775) (opendatahub-io#776) * feat: Add ModelRegistry component (opendatahub-io#775) * fix: Fix modelregistry odh overlays path * fix: fix dsc_create_test tests err nil check * fix: refactor ModelRegistry.ReconcileComponent for new parameters * chore: added modelregistry to README.md * fix: add missing rbac rules for deploymentconfigs and daemonsets * chore: code lint cleanup * fix: added check for nil DevFlags in model-registry component * fix: add nil check for dscispec.DevFlags in model-registry ReconcileComponent * fix: remove RBAC rules for daemonsets and deploymentconfigs * fix(chore): fix lint errors in dsc_deletion_test.go (cherry picked from commit 112d3f1) Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: removes SetImageParamsMap from ComponentInterface (opendatahub-io#897) Partial application of already applied commit d10a764 Author: Bartosz Majsak <[email protected]> Date: Thu Mar 7 15:43:37 2024 +0100 chore: removes SetImageParamsMap from ComponentInterface (opendatahub-io#897) As it's not used by any component, acting as a simple pass-return loop. This makes the API contract a bit cleaner. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: remove the need of passing rest config (opendatahub-io#895) Partial application of already applied commit ca7fa98 Author: Bartosz Majsak <[email protected]> Date: Fri Mar 8 17:40:54 2024 +0100 chore: remove the need of passing rest config (opendatahub-io#895) * chore: fixes ComponentInterface docs By removing reference to non-existing func. This function has been in use outside of this component. * fix: removes rest config As we are already using client.Client interface we do not have to instantiate other typed clients to e.g. list resources using their own funcs. Generic client.Client is sufficient for these needs. Additionally this change adds ctx propogation for these calls. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: feat(logger): for both controller level and component level (opendatahub-io#837) Partial application of already applied commit d8a83a2 Author: Wen Zhou <[email protected]> Date: Mon Apr 1 22:06:16 2024 +0200 feat(logger): for both controller level and component level (opendatahub-io#837) * feat(logger): for both controller level and component level Signed-off-by: Wen Zhou <[email protected]> * update(logger): use logr instead of uber's zap Signed-off-by: Wen Zhou <[email protected]> * update: do not log error only print Signed-off-by: Wen Zhou <[email protected]> * update: use zap.Options for both and tune levels Signed-off-by: Wen Zhou <[email protected]> * update: move setting into common function Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> update(modelregistry): rename image name (opendatahub-io#877) Signed-off-by: Wen Zhou <[email protected]> (cherry picked from commit b4e4d6f) modelregistry: partial: chore: cleanup duplicated functions packages and add more for godoc (opendatahub-io#981) Partial application of already applied commit 96c85f2 Author: Wen Zhou <[email protected]> Date: Tue Apr 23 14:05:24 2024 +0200 chore: cleanup duplicated functions packages and add more for godoc (opendatahub-io#981) * chore: cleanup duplicated functions/package and add godoc - move GetPlatform() from deploy package to cluster package - move const ManagedRhods SelfManagedRhods OpenDataHub from deploy to cluster package - move WaitForDeploymentAvailable() monitoring package to cluster package - remove monitoring package - move UpdatePodSecurityRolebinding() from common package to cluster package - deprecate GetDomain from common package, to only use GetDomain from cluster package. - remove gvk package, move its GVK to cluster package - move DeleteExistingSubscription() from deploy package to upgrade package - do not export getSubscription() Signed-off-by: Wen Zhou <[email protected]> * update: remove gvk into one file but under cluster package Signed-off-by: Wen Zhou <[email protected]> * update: rename variable, removing GVK from it Signed-off-by: Wen Zhou <[email protected]> * update: move gvk into a sub package under cluster Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> feat(mr): create namespace for Model Registry (opendatahub-io#930) * feat(mr): create namespace for smm Signed-off-by: Wen Zhou <[email protected]> * fix: rebase Signed-off-by: Zhou, Wen <[email protected]> * update: code review comments Signed-off-by: Wen Zhou <[email protected]> * fix(doc): wrong comments Signed-off-by: Wen Zhou <[email protected]> * update: remove label to keep namespace even opreator is uninstalled Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> (cherry picked from commit 1188ce1) feat(mr): add model registry odh extras manifests, fixes RHOAIENG-5112 (opendatahub-io#953) (cherry picked from commit 7c3e81b) modelregistry: partial: chore: Open up util functions for context propagation (opendatahub-io#1033) Partial application of already applied commit 105adae Author: Aslak Knutsen <[email protected]> Date: Tue Jun 4 15:16:21 2024 +0200 chore: Open up util functions for context propagation (opendatahub-io#1033) context should be determined by the caller and propagated down the call chain. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: remove duplicated platform call in each component (opendatahub-io#1055) Partial application of already applied commit 1b04761 Author: Wen Zhou <[email protected]> Date: Fri Jun 14 14:47:33 2024 +0200 chore: remove duplicated platform call in each component (opendatahub-io#1055) - get in DSC and pass into compoment Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: update api docs run `make api-docs` add +groupName=datasciencecluster.opendatahub.io On backporting of 1b86e42 ("Update readme.md (opendatahub-io#890)") Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore(lint): enable contextcheck and containedctx (opendatahub-io#1070) Partial application of already applied: commit 06e21a4 Author: Luca Burgazzoli <[email protected]> Date: Tue Jun 25 17:15:13 2024 +0200 chore(lint): enable contextcheck and containedctx (opendatahub-io#1070) * chore(lint): enable contextcheck Signed-off-by: Luca Burgazzoli <[email protected]> * chore(lint): enable containedctx Signed-off-by: Luca Burgazzoli <[email protected]> * Fix PR review findings * Fix rebase --------- Signed-off-by: Luca Burgazzoli <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> refactor: dashboard with new manifests structure (opendatahub-io#1065) Partial application of already applied: commit 438f4c2 Author: Wen Zhou <[email protected]> Date: Tue Jul 2 16:56:25 2024 +0200 refactor: dashboard with new manifests structure (opendatahub-io#1065) * refactor: dashboard with new manifests structure - change type of platform, skip convert to string - add more support for ApplyParam() to not only take ENV but also anything from ExtraParamMaps * update: simplify override function * update: add value for Unknown platform --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> feat: add managed model registry prometheus config handling logic, part of RHOAIENG-4273 (opendatahub-io#1150) (cherry picked from commit 72fc80f) Adjusted Kueue and TrainingOperator rules Signed-off-by: Yauheni Kaliuta <[email protected]> feat: add default cert for model registry, fixes RHOAIENG-9909 (opendatahub-io#1165) Conflicts: ApplyParams arguments due to missing: d84cd33 ("update: remove unnecessary param from ApplyParams() (opendatahub-io#1180)") * feat: add default cert for model registry, fixes RHOAIENG-9909 * fix: fixed lint errors * fix: add servicemesh feature check for MR, add MR enable check in e2e default cert test * fix: changed MR servicemesh status check to look for Managed state * fix: ignore missing model-registry default cert if already removed (cherry picked from commit 4c411a6) feat: add servicemeshmember for model registry namespace, fixes RHOAIENG-11831 (opendatahub-io#1202) * feat: add servicemeshmember for model registry namespace, fixes RHOAIENG-11831 * fix: ignore error if MR smm already exists * code cleanup for readability Co-authored-by: Bartosz Majsak <[email protected]> * Avoid shadowing package name in variable Co-authored-by: Bartosz Majsak <[email protected]> * chore: rename createServicemeshMember to enrollToServiceMesh, add log messages --------- Co-authored-by: Bartosz Majsak <[email protected]> (cherry picked from commit 8f3d013) feat: add managed model registry prometheus job, metrics, and alering rules, fixes RHOAIENG-4273 (cherry picked from commit f811d67) modelregistry: partial: fix: add check for all platform offering on components Partial application of ab7e04e ("fix: add check for all platform offering on components (opendatahub-io#1205)") ModelRegistry related. Signed-off-by: Yauheni Kaliuta <[email protected]> feat: added shared registries namespace property in model registry dsc component, fixes RHOAIENG-12335 (opendatahub-io#1221) * feat: added shared registries namespace property in model registry dsc component, fixes RHOAIENG-12335 Signed-off-by: Dhiraj Bokde <[email protected]> * fix: added registriesNamespace property in references to model registry component in docs, samples, etc. Signed-off-by: Dhiraj Bokde <[email protected]> * fix: updated api-overview.md Signed-off-by: Dhiraj Bokde <[email protected]> * fix: add missing field in setupDSCInstance() Signed-off-by: Dhiraj Bokde <[email protected]> * fix: added debug log for failing e2e test * debug: added log messages in test dsc creation Signed-off-by: Dhiraj Bokde <[email protected]> * debug: make registriesNamespace omitempty so apiserver will set the default value, clean testDSCCreation with more log messages Signed-off-by: Dhiraj Bokde <[email protected]> * update: modelregistry with namespace - add namespace for rhoai case - remove omitemptry on namespace: if user does not set it, it will get default value to use. since its type is string Signed-off-by: Wen Zhou <[email protected]> * fix: test need to update for modelreg namespace Signed-off-by: Wen Zhou <[email protected]> * update: cleanup debug info in test cases Signed-off-by: Wen Zhou <[email protected]> * fix: make registriesNamespace immutability check dynamic in cel validation rule * fix: refactor validation rule, set registriesNamespace to optional, add patch func in modelregistry to set default value * fix: add defaulting webhook including envtest, remove patch from modelregistry component * fix: add namespace name pattern for registriesNamespace, allow empty string to replace with default value * fix: use unique webhook names * fix: don't change existing validating webhook name to avoid upgrade issues * feat: add model registry registriesNamespace in DSC status * update: - move ModelRegistryStatus from ModelReg into status - update validation rule for namespace: - when update is to removed/unmanaged modelreg: regardless previous state, can change name and set to removed - upgrade 2.13 to 2.14 when no NS set in 2.13 - when update is from remove/unmanaged: e.g change from removed to managed and change name at the same tie - keep same namespace, regardless state - reduce print on passed allowed webhook request - set to omitemptry so required is not add in the CSV - fix review comments: - move update status after reconcile is successful - set to use const for caching on ModeReg namespace Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Dhiraj Bokde <[email protected]> Signed-off-by: Wen Zhou <[email protected]> Co-authored-by: Wen Zhou <[email protected]> (cherry picked from commit dd3df21) fix: only replace/set default model reg namespace by webhook if component is enabled - when modelreg is not set in DSC - when modelreg is set to be Removed these two cases should not block operation, for backwards compataible Signed-off-by: Wen Zhou <[email protected]> (cherry picked from commit 03f6c0b) Update autogenerated files run `make generate manifests api-docs` Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: replace odh-model-registries with rhoai-model-registries Fix names of default registries namespace treewide. Signed-off-by: Yauheni Kaliuta <[email protected]> tests: e2e: disable modelregistry It is not GA yet, disable for now to avoid possible problems. Signed-off-by: Yauheni Kaliuta <[email protected]> get_all_manifests.sh: modelregistry: use rhoai-2.14 branch Use versioned branch/tag like other components. Signed-off-by: Yauheni Kaliuta <[email protected]> Update config/samples/datasciencecluster_v1_datasciencecluster.yaml Co-authored-by: Wen Zhou <[email protected]> Update bundle/manifests/rhods-operator.clusterserviceversion.yaml Co-authored-by: Wen Zhou <[email protected]> modelregistry: keep registriesNamespace as odh except CSV It makes less divergency with ODH and default does not matter as soon as CSV has RHOAI version. Signed-off-by: Yauheni Kaliuta <[email protected]>
…o#776) Squashed commit due to buildability since ComponentInterface has changed. Other patches squashed as well to avoid possible double squashing on merging. Set management state to Removed since it is not modelregistry: regenerate autogenerated files Run `make generate manifests` after all the changes Signed-off-by: Yauheni Kaliuta <[email protected]> feat: Add ModelRegistry component (opendatahub-io#775) (opendatahub-io#776) * feat: Add ModelRegistry component (opendatahub-io#775) * fix: Fix modelregistry odh overlays path * fix: fix dsc_create_test tests err nil check * fix: refactor ModelRegistry.ReconcileComponent for new parameters * chore: added modelregistry to README.md * fix: add missing rbac rules for deploymentconfigs and daemonsets * chore: code lint cleanup * fix: added check for nil DevFlags in model-registry component * fix: add nil check for dscispec.DevFlags in model-registry ReconcileComponent * fix: remove RBAC rules for daemonsets and deploymentconfigs * fix(chore): fix lint errors in dsc_deletion_test.go (cherry picked from commit 112d3f1) Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: removes SetImageParamsMap from ComponentInterface (opendatahub-io#897) Partial application of already applied commit d10a764 Author: Bartosz Majsak <[email protected]> Date: Thu Mar 7 15:43:37 2024 +0100 chore: removes SetImageParamsMap from ComponentInterface (opendatahub-io#897) As it's not used by any component, acting as a simple pass-return loop. This makes the API contract a bit cleaner. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: remove the need of passing rest config (opendatahub-io#895) Partial application of already applied commit ca7fa98 Author: Bartosz Majsak <[email protected]> Date: Fri Mar 8 17:40:54 2024 +0100 chore: remove the need of passing rest config (opendatahub-io#895) * chore: fixes ComponentInterface docs By removing reference to non-existing func. This function has been in use outside of this component. * fix: removes rest config As we are already using client.Client interface we do not have to instantiate other typed clients to e.g. list resources using their own funcs. Generic client.Client is sufficient for these needs. Additionally this change adds ctx propogation for these calls. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: feat(logger): for both controller level and component level (opendatahub-io#837) Partial application of already applied commit d8a83a2 Author: Wen Zhou <[email protected]> Date: Mon Apr 1 22:06:16 2024 +0200 feat(logger): for both controller level and component level (opendatahub-io#837) * feat(logger): for both controller level and component level Signed-off-by: Wen Zhou <[email protected]> * update(logger): use logr instead of uber's zap Signed-off-by: Wen Zhou <[email protected]> * update: do not log error only print Signed-off-by: Wen Zhou <[email protected]> * update: use zap.Options for both and tune levels Signed-off-by: Wen Zhou <[email protected]> * update: move setting into common function Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> update(modelregistry): rename image name (opendatahub-io#877) Signed-off-by: Wen Zhou <[email protected]> (cherry picked from commit b4e4d6f) modelregistry: partial: chore: cleanup duplicated functions packages and add more for godoc (opendatahub-io#981) Partial application of already applied commit 96c85f2 Author: Wen Zhou <[email protected]> Date: Tue Apr 23 14:05:24 2024 +0200 chore: cleanup duplicated functions packages and add more for godoc (opendatahub-io#981) * chore: cleanup duplicated functions/package and add godoc - move GetPlatform() from deploy package to cluster package - move const ManagedRhods SelfManagedRhods OpenDataHub from deploy to cluster package - move WaitForDeploymentAvailable() monitoring package to cluster package - remove monitoring package - move UpdatePodSecurityRolebinding() from common package to cluster package - deprecate GetDomain from common package, to only use GetDomain from cluster package. - remove gvk package, move its GVK to cluster package - move DeleteExistingSubscription() from deploy package to upgrade package - do not export getSubscription() Signed-off-by: Wen Zhou <[email protected]> * update: remove gvk into one file but under cluster package Signed-off-by: Wen Zhou <[email protected]> * update: rename variable, removing GVK from it Signed-off-by: Wen Zhou <[email protected]> * update: move gvk into a sub package under cluster Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> feat(mr): create namespace for Model Registry (opendatahub-io#930) * feat(mr): create namespace for smm Signed-off-by: Wen Zhou <[email protected]> * fix: rebase Signed-off-by: Zhou, Wen <[email protected]> * update: code review comments Signed-off-by: Wen Zhou <[email protected]> * fix(doc): wrong comments Signed-off-by: Wen Zhou <[email protected]> * update: remove label to keep namespace even opreator is uninstalled Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Zhou, Wen <[email protected]> (cherry picked from commit 1188ce1) feat(mr): add model registry odh extras manifests, fixes RHOAIENG-5112 (opendatahub-io#953) (cherry picked from commit 7c3e81b) modelregistry: partial: chore: Open up util functions for context propagation (opendatahub-io#1033) Partial application of already applied commit 105adae Author: Aslak Knutsen <[email protected]> Date: Tue Jun 4 15:16:21 2024 +0200 chore: Open up util functions for context propagation (opendatahub-io#1033) context should be determined by the caller and propagated down the call chain. Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore: remove duplicated platform call in each component (opendatahub-io#1055) Partial application of already applied commit 1b04761 Author: Wen Zhou <[email protected]> Date: Fri Jun 14 14:47:33 2024 +0200 chore: remove duplicated platform call in each component (opendatahub-io#1055) - get in DSC and pass into compoment Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: update api docs run `make api-docs` add +groupName=datasciencecluster.opendatahub.io On backporting of 1b86e42 ("Update readme.md (opendatahub-io#890)") Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: partial: chore(lint): enable contextcheck and containedctx (opendatahub-io#1070) Partial application of already applied: commit 06e21a4 Author: Luca Burgazzoli <[email protected]> Date: Tue Jun 25 17:15:13 2024 +0200 chore(lint): enable contextcheck and containedctx (opendatahub-io#1070) * chore(lint): enable contextcheck Signed-off-by: Luca Burgazzoli <[email protected]> * chore(lint): enable containedctx Signed-off-by: Luca Burgazzoli <[email protected]> * Fix PR review findings * Fix rebase --------- Signed-off-by: Luca Burgazzoli <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> refactor: dashboard with new manifests structure (opendatahub-io#1065) Partial application of already applied: commit 438f4c2 Author: Wen Zhou <[email protected]> Date: Tue Jul 2 16:56:25 2024 +0200 refactor: dashboard with new manifests structure (opendatahub-io#1065) * refactor: dashboard with new manifests structure - change type of platform, skip convert to string - add more support for ApplyParam() to not only take ENV but also anything from ExtraParamMaps * update: simplify override function * update: add value for Unknown platform --------- Signed-off-by: Wen Zhou <[email protected]> Signed-off-by: Yauheni Kaliuta <[email protected]> feat: add managed model registry prometheus config handling logic, part of RHOAIENG-4273 (opendatahub-io#1150) (cherry picked from commit 72fc80f) Adjusted Kueue and TrainingOperator rules Signed-off-by: Yauheni Kaliuta <[email protected]> feat: add default cert for model registry, fixes RHOAIENG-9909 (opendatahub-io#1165) Conflicts: ApplyParams arguments due to missing: d84cd33 ("update: remove unnecessary param from ApplyParams() (opendatahub-io#1180)") * feat: add default cert for model registry, fixes RHOAIENG-9909 * fix: fixed lint errors * fix: add servicemesh feature check for MR, add MR enable check in e2e default cert test * fix: changed MR servicemesh status check to look for Managed state * fix: ignore missing model-registry default cert if already removed (cherry picked from commit 4c411a6) feat: add servicemeshmember for model registry namespace, fixes RHOAIENG-11831 (opendatahub-io#1202) * feat: add servicemeshmember for model registry namespace, fixes RHOAIENG-11831 * fix: ignore error if MR smm already exists * code cleanup for readability Co-authored-by: Bartosz Majsak <[email protected]> * Avoid shadowing package name in variable Co-authored-by: Bartosz Majsak <[email protected]> * chore: rename createServicemeshMember to enrollToServiceMesh, add log messages --------- Co-authored-by: Bartosz Majsak <[email protected]> (cherry picked from commit 8f3d013) feat: add managed model registry prometheus job, metrics, and alering rules, fixes RHOAIENG-4273 (cherry picked from commit f811d67) modelregistry: partial: fix: add check for all platform offering on components Partial application of ab7e04e ("fix: add check for all platform offering on components (opendatahub-io#1205)") ModelRegistry related. Signed-off-by: Yauheni Kaliuta <[email protected]> feat: added shared registries namespace property in model registry dsc component, fixes RHOAIENG-12335 (opendatahub-io#1221) * feat: added shared registries namespace property in model registry dsc component, fixes RHOAIENG-12335 Signed-off-by: Dhiraj Bokde <[email protected]> * fix: added registriesNamespace property in references to model registry component in docs, samples, etc. Signed-off-by: Dhiraj Bokde <[email protected]> * fix: updated api-overview.md Signed-off-by: Dhiraj Bokde <[email protected]> * fix: add missing field in setupDSCInstance() Signed-off-by: Dhiraj Bokde <[email protected]> * fix: added debug log for failing e2e test * debug: added log messages in test dsc creation Signed-off-by: Dhiraj Bokde <[email protected]> * debug: make registriesNamespace omitempty so apiserver will set the default value, clean testDSCCreation with more log messages Signed-off-by: Dhiraj Bokde <[email protected]> * update: modelregistry with namespace - add namespace for rhoai case - remove omitemptry on namespace: if user does not set it, it will get default value to use. since its type is string Signed-off-by: Wen Zhou <[email protected]> * fix: test need to update for modelreg namespace Signed-off-by: Wen Zhou <[email protected]> * update: cleanup debug info in test cases Signed-off-by: Wen Zhou <[email protected]> * fix: make registriesNamespace immutability check dynamic in cel validation rule * fix: refactor validation rule, set registriesNamespace to optional, add patch func in modelregistry to set default value * fix: add defaulting webhook including envtest, remove patch from modelregistry component * fix: add namespace name pattern for registriesNamespace, allow empty string to replace with default value * fix: use unique webhook names * fix: don't change existing validating webhook name to avoid upgrade issues * feat: add model registry registriesNamespace in DSC status * update: - move ModelRegistryStatus from ModelReg into status - update validation rule for namespace: - when update is to removed/unmanaged modelreg: regardless previous state, can change name and set to removed - upgrade 2.13 to 2.14 when no NS set in 2.13 - when update is from remove/unmanaged: e.g change from removed to managed and change name at the same tie - keep same namespace, regardless state - reduce print on passed allowed webhook request - set to omitemptry so required is not add in the CSV - fix review comments: - move update status after reconcile is successful - set to use const for caching on ModeReg namespace Signed-off-by: Wen Zhou <[email protected]> --------- Signed-off-by: Dhiraj Bokde <[email protected]> Signed-off-by: Wen Zhou <[email protected]> Co-authored-by: Wen Zhou <[email protected]> (cherry picked from commit dd3df21) fix: only replace/set default model reg namespace by webhook if component is enabled - when modelreg is not set in DSC - when modelreg is set to be Removed these two cases should not block operation, for backwards compataible Signed-off-by: Wen Zhou <[email protected]> (cherry picked from commit 03f6c0b) Update autogenerated files run `make generate manifests api-docs` Signed-off-by: Yauheni Kaliuta <[email protected]> modelregistry: replace odh-model-registries with rhoai-model-registries Fix names of default registries namespace treewide. Signed-off-by: Yauheni Kaliuta <[email protected]> tests: e2e: disable modelregistry It is not GA yet, disable for now to avoid possible problems. Signed-off-by: Yauheni Kaliuta <[email protected]> get_all_manifests.sh: modelregistry: use rhoai-2.14 branch Use versioned branch/tag like other components. Signed-off-by: Yauheni Kaliuta <[email protected]> Update config/samples/datasciencecluster_v1_datasciencecluster.yaml Co-authored-by: Wen Zhou <[email protected]> Update bundle/manifests/rhods-operator.clusterserviceversion.yaml Co-authored-by: Wen Zhou <[email protected]> modelregistry: keep registriesNamespace as odh except CSV It makes less divergency with ODH and default does not matter as soon as CSV has RHOAI version. Signed-off-by: Yauheni Kaliuta <[email protected]>
Description
Added string property named registriesNamespace in model registry component DSC config to configue shared registries namespace.
The property can only be set once using CEL validation rules added using kubebuilder annotations in the CRD.
Fixes RHOAIENG-12335
https://issues.redhat.com/browse/RHOAIENG-12335
How Has This Been Tested?
Includes existing integration test that now takes the registry namespace from the DSC.
Screenshot or short clip
Merge criteria